这个global
变量$post
将设置为主查询中的第一篇帖子。当任何循环运行时(假设其构造正确),无论是主循环还是任意数量的次循环,$post
将依次设置到该循环中的每个帖子。在循环结束时,它将设置为运行的最后一个循环中的最后一个帖子。功能wp_reset_query
和wp_rest_postdata
在很多情况下,帮助解决这个问题。
我很确定问题是“循环中的循环”的构造,但你没有发布代码,所以我只能猜测。我猜你有这样的想法:
$recent = get_posts(/*...*/);
foreach ($recent as $r) {
the_title();
}
您需要:
$recent = new WP_Query(/*...*/);
if ($recent->have_posts()) {
while($recent->have_posts()) {
$recent->the_post();
the_title();
}
}
wp_reset_postdata();