查看目录
用wordpress建站的朋友都知道,wordpress程序默认显示的文章是按照发布的时间排序的,新发布文章排在最前面,但有时候一些早期文章我们进行了内容更新,此时修改后的文章内容就是最新的,但是默认排序它还在后面,如何让wordpress文章根据更新时间排序呢?
这个问题还要分两种情况,就是说我们是想让wordpress后台文章安照更新时间排序还是想让网站前台文章按照最新更新时间排序。
一、wordpress后台文章按照更新时间排列
// wordpress后台文章按最新更新时间排序 chukuangren.com function ludou_set_post_order_in_admin( $wp_query ) { if ( is_admin() ) { $wp_query->set( 'orderby', 'modified' ); // 此处是将最新修改的文章排在前面 // 如果要将最新修改的文章排在后面,可将DESC改成ASC $wp_query->set( 'order', 'DESC' ); } } add_filter('pre_get_posts', 'ludou_set_post_order_in_admin' );
这段代码是给wordpress新加了一段函数,这个函数就是对排序字段增加 modified ,modified的意思就是最后更新时间,貌似这还是来自露兜大佬的代码呢,难得。
二、wordpress前台文章按照更新时间排序
1、打开WordPress主题的index.php文件,搜索代码:
<?php while ( have_posts() ):the_post(); ?>
2、在前面插入下面几行代码:
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $args = array( 'orderby' => modified, 'showposts' => 10, 'paged' => $paged ); query_posts($args);
3、继续搜索:
<?php endwhile;?>
4、将其替换为如下代码:
<?php endwhile; wp_reset_query();?>
三、代码说明:
1、根据orderby的值不同,可以让文章按照很多种方式进行排序:
title:按标题;
date:按发布日期;
modified:按修改时间;
ID:按文章ID;
rand:随机排序;
comment_count:按评论数
2、如果你同时想修改标签页、分类页等存档页面的文章排列顺序的话,同样可以按照上面的方法修改主题目录下的archive.php等。