声明
本教程属于《WordPress主题开发系列教程初阶》 之一
未经授权,禁止转载,违者必究!
描述
在一个基础的WordPress博客主题中首页通常是渲染一个文章列表,以最近更新的方式排序,在上一小节中我已经教大家怎么写一个静态的列表页,在本小节的教程中,我将教大家如何渲染一个动态的文章列表页,也就是将后台文章渲染到前台。
开始
开启文章缩略图功能
在我们的首页列表中有文章缩略图,也就是我们经常理解的文章封面,而在我们默认的主题中是没有开启这个文章封面的,因此我们需要在主题根目录下面的全局函数文件(functions.php)中写入如下代码:
add_theme_support('post-thumbnails');

add_theme_support( string $feature, mixed $args )
此函数为WordPress封装函数,可以给你自己的主题开启给定的功能支持,他可以传入两个值
参数 | 类型 | 描述 |
---|---|---|
$feature | 字符串,必须 | 要添加的功能 |
$args | 数组,不是必须 | 因为我个人很少用到这个,也没去研究过,就不便多说了,建议大家想要深入了解的可以看官方文档。 |
添加好这行代码之后我们再看后台编辑文章的地方,就会看见有了缩略图功能。
开始添加几篇文章:

开始渲染列表
在开始动态渲染列表之前,我们需要先整理一下列表代码(index.php)。
我们在前台可以看书列表的格式都是一样的,要展示的内容也都是一样的,所以我们只需要一个列表项就行了,其他的删掉。



之后我们开始渲染列表,这里会用到WordPress中最重要的一个循环结构体:
<?php
if(have_posts()){
while (have_posts()) {
the_post();
}
}else {
echo '非常抱歉,没有相关文章。';
}
?>
网上关于这个循环结构体有很多简写的方法,但代码看起来委实不爽,因此在这里为了方便大家理解我将它按照php的标准语法写了出来。
这个循环结构体其实要表达的意思就是如果有文章就循环,没有文章就输出没有文章的提示或进行其他处理,在这里它用到了两个重要函数:
have_posts()
当前的WordPress查询是否有结果可以循环显示。
当前的WordPress查询就表示如果你在那个页面WordPress会自动给你生成一个查询,比如首页就是全站文章列表,分类页就是分类页文章列表,它输出的是一个bool值,如果有文章为真,没有为假。
the_post()
在循环中迭代发布索引
具体对于这的理解我也不是太清楚,但是在循环结构体中使用了此函数,就可以用WordPress封装的函数(get_the_打头的)来获取一些数据
开始循环
我们将我们的列表放入循环结构体中,如下:

一定要注意php的语法,建议大家装一个php语法检测插件!
此刻我们再打开网站,就会看到一个循环的列表:

但这个列表的数据人就是固定的,怎么动态调用文章的真实数据呢,因为这里涉及到的函数较多,我将在下一小节中为大家仔细讲解!
技术援助
需要技术援助?点击这里,帮你解决你的所有问题!PS:可能你离大神之间,只差一个我们!!!!