在WordPress主题开发中, 我们可以使用single.php来显示特定的单个帖子。
为此, 通常的做法是:
<
?php if (have_posts()) : ?>
<
?php while (have_posts()) : the_post();
?>
<
?php the_content();
?>
<
?php endwhile;
?>
<
?php endif;
?>
为什么需要循环显示单个帖子?任何人都可以给出正当理由吗?
#1WordPress循环实例化了一些功能, 例如the_title(), the_content()和其他功能。
换句话说, 你的帖子被加载到该循环中, 并且如果你在单个帖子中, 则循环将循环一次。尽管有一个循环可能很奇怪, 但实际上它非常有用。
【为什么我需要在single.php中进行wp循环】WordPress使用模板层次结构, 这是一种选择为给定帖子/页面加载哪个模板的方法。在你的single.php中, 循环将运行一次。但是, 如果你没有单个.php文件, 则WordPress将在同一帖子中使用index.php。
为了保持一致性, 有一个适用于任意数量帖子的循环都是有帮助的。否则, 在index.php中, 你将需要为一个帖子编写一个案例, 为多个帖子编写另一个案例, 并且保持一致的模板方法将很困难。
#2这是使我丧命多年的东西, 但我找到了答案:不, 你不需要在单个页面中使用LOOP, 只需调用the_post()即可获得所有数据
.... BUT ....
如果你不使用循环(while(have_posts())..), 则不会调用钩子” loop_end” , 并且如果插件/进程对该钩子有任何操作, 则它将不起作用。因此, 出于安全原因, 你应该使用循环。
另外, 人们问我是否需要在循环之前检查是否存在:if(have_posts())?
<
?
if( have_posts() ):
while( have_posts() ):
the_post();
.....
endwhile;
endif
?>
不, 你不需要检查
.... BUT ....
通过检查, 你可以在循环之前包含标题/标题, 如果循环为空, 则不包含它们。
推荐阅读
- 为什么我在wordpress返回帖子中的类别模板不在相关类别中()
- 如果键为空,为什么获取发布元单参数不起作用
- 为什么我的自定义帖子类型无法使用WP_QUERY()
- 人工智能无人干预垃圾发电全面解决方案
- 1024程序员节(51CTO博客送福利啦,千件实体好礼,零门槛瓜分;;;)
- 都 2021 了你居然还在用 WebStorm ()
- 瀚高数据库内存结构
- 宙斯盾 DDoS 防护系统“降本增效”的云原生实践
- 使用POI把查询到的数据表数据导出到Excel中,一个表一个sheet.[超详细]