可以在两个循环之间交替

时间:2016-09-08 作者:Patrick

我正在尝试创建一个循环,允许我这样做:

<div>

    <div 1> first post from the "featured" category </div> 

    <div 2> first post not from the "featured" category </div> 

    <div 3> second post from the "featured" category </div> 

    <div 4> second post not from the "featured" category </div> 

    <div 5> third post from the "featured" category </div> 

    <div 6> third post not from the "featured" category </div> 

</div> 
这些帖子都来自同一个帖子类型。是否可以使用wp_query?

1 个回复
SO网友:cjbj

对此需要两个查询。假设特色类别的ID为5。然后设置两个查询,每个查询检索3篇文章:

$query1 = new WP_Query( array( \'cat\' => \'5\', \'posts_per_page\' => 3  ) );

$query2 = new WP_Query( array( \'cat\' => \'-5\', \'posts_per_page\' => 3  ) );
现在您有两组最多包含三个项目的帖子。可能会更少。我不知道你想如何处理这种情况,但假设你想要的帖子数量相等,你会这样循环浏览:

while ($query1->have_posts() && $query2->have_posts()) {
  ...
  $query1->the_post()
  echo \'<h1>\' . the_title() \'</h1>\';
  echo \'<div class="post-content">\' . the_content() . \'</div>\'
  ...
  $query2->the_post()
  echo \'<h1>\' . the_title() \'</h1>\';
  echo \'<div class="post-content">\' . the_content() . \'</div>\'
  ...
  }
注意:我没有测试这段代码,所以要小心拼写错误等等。

相关推荐

GET_POSTS查询大约需要40秒来执行

我在get\\u帖子中有一个元查询,它需要花很长时间才能完成。它工作得很好,但只是时间太长了。我有一个名为event. 在每个event 发布后,有自定义元数据:post\\U sort\\U日期(事件日期YmdHis 格式,用于排序)我需要做的是获取下一个事件,该事件相对于$year 和$month 变量。所以如果$year = 2021 和$month = 10 (2021 10月)然后应该在2021 11月或之后找到第一个事件。我下面的查询很好,但很慢。执行大约需要40秒,我不知道为什么。$next