默认情况下一般WordPress主题的首页、分类、标签等页面文章是都以发布日期进行排序的,有时候可能想让网站的首页文章按照最新修改时间进行排序,这个时候就要用到 query_posts 函数来对wordpress主题进行一些简单的修改,来实现WordPress首页文章按最后修改时间排序。
WordPress首页文章按最后修改时间排序方法一
首先进入WordPress使用的主题的主题文件夹,在对应模板的index.php 中查找 if (have_posts())
,在其前面添加 query_posts
函数,代码如下:
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $args = array( // 以下代码中的 modified 就是 orderby 的值,按修改时间排序。 // 常用 orderby 值:title-按标题;date-按发布日期;modified-按修改时间;ID-按文章 ID;rand-随机排序;comment_count-按评论数。 'orderby' => modified, // 控制每页显示 20 篇文章,如果将 20 改成-1 将显示所有文章。不加此代码表示按照后台设置。 'showposts' => 20, 'paged' => $paged ); query_posts($args);
然后找到 enif,在其后添加代码:
wp_reset_query();
这样首页文章就按照修改时间排序了,并且可以正常实现分页,如果你希望在其他分类页面也一样显示,那么编辑 archive.php 文件,和上面同样的方法。
WordPress首页文章按最后修改时间排序方法二
在你主题的index.php中找到:
<!--?php if(have_posts()) : while (have_posts()) : the_post(); ?-->
在上面这段代码之前加入以下代码:
<!--?php while (have_posts()) : the_post(); ?-->
现在刷新首页即可发现文章是按照最后更新的顺序来排序的,但是时间却还显示的是文章发布时间,那么接下来你需要修改文章的时间显示,将原有的时间显示代码换成下面的:
最后更新:
<!--?php the_modified_time('y-m-d'); ?-->
这样便可以了,如果你希望在其他分类页面也一样显示,那么编辑 archive.php 文件,和上面同样的方法。