これは重いと思いますが、元の質問に答えるために、最初のループで配列内のすべての投稿IDを収集し、投稿IDの配列を予期する'post__not_in'を使用して2番目のループからそれらの投稿を除外しました
<?php
$args1 = array('category_name' => 'test-cat-1', 'order' => 'ASC');
$q1 = new WP_query($args);
if($q1->have_posts()) :
$firstPosts = array();
while($q1->have_posts()) : $q1->the_post();
$firstPosts[] = $post->ID; // add post id to array
echo '<div class="item">';
echo "<h2>" . get_the_title() . "</h2>";
echo "</div>";
endwhile;
endif;
/****************************************************************************/
// array of post id's collected in first loop, can now be used as value for the 'post__not_in' parameter in second loops query $args
$args2 = array('post__not_in' => $firstPosts, 'order' => 'ASC' );
$q2 = new WP_query($args2);
if($q2->have_posts()) :
while($q2->have_posts()) : $q2->the_post();
echo '<div class="item">';
echo "<h2>" . get_the_title() . "</h2>";
echo "</div>";
endwhile;
endif;
?>
最初のループは、カテゴリ内のすべての投稿を表示し、投稿IDを配列に収集します。
2番目のループは、最初のループの投稿を除くすべての投稿を表示します。