我正在努力实现这个目标
Author.php
作者循环:
帖子循环
爱好循环
计划循环
author.php模板文件具有作者循环。 我需要为作者循环一些自定义帖子类型,然后我会将它们放入自己的标签中。
但是,当我在Authors循环中放入一个查询时,它会循环两次&我无法弄清楚原因。
这是我正在使用的循环:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<div class="twelvecol first clearfix"><hr />
<?php $looped = new WP_Query(array('post_type' => 'post', 'posts_per_page' => -1 ));
if ( $looped->have_posts() ) {
while ( $looped->have_posts() ) {
$looped->the_post();
the_title();the_content();
}
}
wp_reset_postdata(); ?>
</div>
我错过了会阻止它循环两次的东西吗?
我必须在AUTHORS LOOP中拥有这些循环,因为它们是特定于该作者的,我不希望STEVE的帖子显示在HARRY的页面上等等
答案 0 :(得分:1)
经过多次讨论并盯着屏幕看来,似乎主要的作者循环包含一个WHILE,然后在嵌套循环中,查询也有一段时间。
现在从我收集到的内容中,第一个WHILE询问作者创建了多少帖子,然后多次循环,
嵌套循环中的WHILE表现得正常。
所以我最终得到了嵌套循环中的帖子数量,由它的父级WHILE循环...
如果作者发布了5个帖子,则会有5个嵌套循环副本。
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
应该是:
<?php if ( have_posts() ): the_post(); ?>
希望这可以帮助未来的人们解决这个问题!
答案 1 :(得分:0)
你不能像这样嵌套循环,你需要在WP_Qwery
的参数上添加
检查当前作者的全局$wp_query
并将其包含在WP_Query中。
这应该足以让你入门。
如果您有任何疑问或需要更多信息,请询问。
答案 2 :(得分:0)
根本不需要外部循环(循环=多次迭代)。只需将author
ID作为参数添加到查询中。