专题目录最旧文章在上时更新时间错误

2024-02-01 13:42 小编

更新到B2 4.1.5+ 版本后,我们就可以设置专题目录的文章排序了。

内部绝密传真282期

但是,当你将【专题文章排序方式】设置为【最旧的排在最前面】时,在专题目录中,标题下方的 XXX前更新 会显示为最旧的那篇文章的日期。

这是因为在代码中,没有判断文章排序,总是将显示在最上面的文章的时间作为更新时间。如下图左边图片:

内部绝密传真282期

修正的方法就是检查下【专题文章排序方式】的排序方式,然后选择到底是第一篇还是最后一篇的时间为更新时间。

注:文本的修改方法也是不行的,因为只能根据显示在列表的5篇文章来选择日期,如果专题超过5篇,就不对了,暂时也没空折腾,等后续有空再研究吧。

打开B2主题的 b2\Pages\collection.php,按照下图所示添加和替换代码即可:

内部绝密传真282期

第①处的代码为:

$order = b2_get_option('template_collection','collection_post_order');$order = !empty($order) ? $order : 'asc';

第②处的代码为:

<?php    $latest = false;     if( !empty($post_data) ) {        $latest = ( $order == 'asc') ? end($post_data) : $post_data[0];    }    echo $latest ? Post::time_ago($latest['date']).__('更新','b2').' · ' : '';    echo $v['posts']['count'].__('篇文章','b2');?>


Tag: 时间
在线咨询 拨打电话

电话

13363039260

内部绝密传真282期

微信二维码