让WordPress首页显示文章数量和分类页面不一样 – WordPress教程

王小优
王小优
王小优
231
文章
0
评论
2015年9月25日
评论
5,954 1179字阅读3分55秒

关于WordPress首页显示文章数量的设置想必大家都比较清楚,就是在Wordpress后台设置→阅读→博客页面至多显示这里。你设置几篇,首页列表就会出现几篇,而同时文章分类列表页、搜索列表页、作者列表页显示的文章数量也会随之改变。

让WordPress首页显示文章数量和分类页面不一样 – WordPress教程

对于博客布局的WordPress主题来说,这样设置简单方便,但是如果你不想让首页和其他页面显示的文章数量不一样该怎么办呢?比如你的博客主题是博客+CMS结合的布局形式,那么首页列表显示的文章数量应该不超过5篇,而文章分类等页面显示的文章数量5篇是远远不够的。

让WordPress首页显示文章数量和分类页面不一样 – WordPress教程

解决方法

把如下代码:

  1. <?php $posts = query_posts($query_string . '&orderby=date&showposts=15'); ?>  

添加至category.php、search.php、archive.php或其它页面模板文件中,以下函数之前:

  1. <?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>  

其中,orderby=date ,是以时间顺序输出排序;showposts=15,15即为添加到该页面输出的文章数量,根据实际情况进行修改。

目前版本的WordPress主题下,常见需要修改的文件有author.php(作者列表页),archive.php(归档列表页),category.php(分类列表页),search.php(搜索列表页)等页面,一般此类文件就存放在主题目录。

这样一来,我们就可以很轻松的定制首页以及各页面显示的文章数量了,首页使用后台设置的,其他页面各自设置。

函数拓展

对于比较简单一点的WordPress主题,无论是模板首页、分类页面、标签页面、存档页面还是搜索结果页面,这些页面上显示的文章数都是一样的。因为每个页面上都调用的have_posts()the_post()这2个函数。而这2个函数的作用分别如下:

1、have_posts()解析:在WordPress中 默认的是一个全局函数。被调用时,实际上是调用全局变量$wp_query->have_posts()成员函数,来简单检查一个全局数组(array)变量$posts的一个循环计数器,以确认是否还有post,如果有返回true(1),如果没有返回false(0)。

2、the_post()解析:该函数则是调用$wp_query->the_post()成员函数前移循环计数器,同时创建一个全局变量$post,把当前的post的所有信息都填进这个$post变量中,建立临时数据调用。

其实现在有不少精品的CMS主题已经在后台整合了首页或者其他页面显示文章的数量的设定,但对于WordPress新手来说,这个问题还是比较棘手的,如果你有此类需求,不妨试下。

若文章图片、下载链接等信息出错,请在评论区留言反馈,博主将第一时间更新!如果喜欢,请打赏支持本站,谢谢大家!
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微博
  • 微博扫一扫
  • weinxin
王小优
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: