WordPress使用全局$post
变量这样,您就不必将post或post\\u ID作为函数的参数传递。所以你可以打电话the_title()
WP知道应该显示哪个标题。
如果站点上只有一个循环,则此行为可以正常工作。但是如果您创建自己的自定义循环并对其进行迭代,那么您可以修改全局$post
变量
让我们看一些示例。假设这是单身。“新闻01”文章的php:
...
while ( have_posts() ) : the_post();
?>
<h1><?php the_title(); // it will show News 01 ?></h1>
<?php the_content(); // it will show its content ?>
<?php
$related = new WP_Query( ... );
while ( $related->have_posts() ) : $related->the_post();
?>
<article>
<h2><?php the_title(); // it will show other title ?></h2>
</article>
<?php endwhile; ?>
<?php the_category(); // what will that show? categories for which post? ?>
在最后一行,它将显示最后一个相关职位的类别。为什么?因为这是一个全球性的帖子
$post
变量设置为。
但如果你打电话wp_reset_postdata();
之后endwhile
, 然后设置全局$post
从global返回岗位$wp_query
对象,这样一切都会再次正常工作。