为什么我需要在single.php中
一个WP循环在wordpress主题的发展,我们可以用single.php中显示特定的单篇文章。 为了这个目的,通常的做法是为什么我需要在single.php中
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<?php the content();?>
<?php endwhile; ?>
<?php endif; ?>
为什么我需要循环显示一个帖子?任何人都可以给出一些有效的理由吗
WordPress Loop例示了一些功能,如the_title()
,the_content()
和others。
换句话说,您的帖子是在该循环中加载,并且如果您处于单个帖子中,循环会通过一次。虽然循环可能很奇怪,但它实际上非常有用。
WordPress使用一个template hierarchy,这是选择的方式来加载特定职位/页的模板。在你的single.php
,循环将运行一次。但是,如果您没有single.php
文件,则WordPress将使用index.php
替代该文章。
为了一致性起见,具有环,其适用于任何数量的帖子的是有帮助的。否则,在您index.php
中,您将需要一个帖子和一个多个帖子的案例,并保持一致的模板方法将是困难的。
你错了。 'the_post()'调用完成你所说的。不是整个循环。 另外,由于存在'single.php',我们不在'index.php'中,因此我们并不需要这个循环。只需调用'the_post()' – Odys
这东西害了我多年,我找到了答案: 不,你并不需要使用单页的循环,你只需要调用the_post(),你都需要数据
.... BUT ....
如果您不使用循环(while(have_posts())....),则不会调用钩子“loop_end”,如果插件/进程对此钩子有任何操作,则它将不起作用。所以出于安全原因,你应该使用循环。
另外,人们问我是否需要检查循环前的存在:if(have_posts())?
<?
if(have_posts()):
while(have_posts()):
the_post();
.....
endwhile;
endif
?>
不,你不需要检查
.... BUT ....
检查允许包括页眉/循环之前的标题,而不是让他们如果循环是空的。
请参阅https://wordpress.stackexchange.com/questions/198704/should-i-use-loop-in-the-single-php-file –