让WordPress文章按最后更新时间排序

原创 闲木鱼  2017-10-26 02:14  阅读 145 次 评论 0 条 百度已收录

WordPress默认的文章显示是按照发表的时间排序的,而有些时候,博主需要对以前的文章做一些修改,这样就需要将修改的文章显示到第一个位置,就需要文章按照修改的时间排序。
修改方法也很简单,不过这次不是在functions.php文件添加代码了,而是在你的主题首页文件index.php中修改。
这里面有几种情况需要考虑,第一种是没有置顶的,这类的比较简单,直接加一行代码即可实现,还有一类是有置顶文章的,需要过滤置顶文章,操刀如下:

一、没有置顶文章

可以在你主题的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 文件,和上面同样的方法。

二、有置顶文章显示

第二类是有置顶文章显示的,就跟我的一样,我首页采用了对置顶文章幻灯片显示,所以需要过滤掉这些文章,如果你的结构跟我的一样的话,可以在原来的index.php中发现已经有了类似于下面这样过滤置顶文章的代码:

<?php
 $sticky = get_option( 'sticky_posts' );
 $args = array(
     'cat'=>'-906',
     'ignore_sticky_posts' => 1,
     'post__not_in' => $sticky,
     'paged' => $paged
 );
 query_posts($args);
?>

那么你需要在这里面加一个参数即可:

'orderby'=> 'modified'

完整如下:

<?php
 $sticky = get_option( 'sticky_posts' );
 $args = array(
     'cat'=>'-906',
     'ignore_sticky_posts' => 1,
     'post__not_in' => $sticky,
     'paged' => $paged,
            'orderby'=> 'modified'
 );
 query_posts($args);
?>

时间显示和一中的情况一样修改即可。
wordpress网站首页文章按更新时间排序
在 index.php 的以下代码之前

<?php while (have_posts()) : the_post(); ?>

添加

<?php $posts = query_posts($query_string . '&orderby=modified');?>

即可
显示最后修改的时间
将以下代码插在合适的位置即可:

<div>最后更新: <?php the_modified_time('Y-m-d'); ?></div>

分开显示最后修改的时间:

<?php $u_time = get_the_modified_time('U');
echo date("y-m",$u_time);
echo date("d",$u_time);
echo date("D",$u_time);
?>

wordpress后台文章列表按最后修改的时间排序。
在当前主题的functions.php中添加以下php代码即可:

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' );

 

如果文章对你有帮助,请赞赏支持闲木鱼发展!

本文地址:https://www.xianmuyu.com/601.html
版权声明:本文为原创文章,版权归 闲木鱼 所有,欢迎分享本文,转载请保留出处!

发表评论


表情