Typecho常用实现方法之获取最近更新时间

Typecho 46

Typecho常用实现方法之获取最近更新时间
作者:欧文斯

分析

最近更新时间,也可以称为最后更新时间、上次更新等等,其目的在于说明博客处于更新的状态,而不是无人打理。Typecho 本身并无提供相关参数供直接使用,因此我们需要换个思维角度来想想如何实现。更新,顾名思义,就是对博客进行了文章发表、修改等等,因此我们就会想到,是否可以把文章的发表时间、修改时间当作是最后一次更新的时间呢?这是肯定的,而且 Typecho 官方本身就会在文章异动时记录时间,所以我们只要在数据库中捞出最近的异动时间就可以了,是不是很简单,赶快来试试吧!

实现

直接上代码:

由于主机参数区别,不能直接复制粘贴使用,大家更应该学习的是思路方法。
function get_last_update(){
    $num   = '1'; //取最近的一笔就好了
    $now = time();
    $db     = Typecho_Db::get();
    $prefix = $db->getPrefix();
    $create = $db->fetchRow($db->select('created')->from('table.contents')->limit($num)->order('created',Typecho_Db::SORT_DESC));
    $update = $db->fetchRow($db->select('modified')->from('table.contents')->limit($num)->order('modified',Typecho_Db::SORT_DESC));
    if($create>=$update){  //发表时间和更新时间取最近的
      echo Typecho_I18n::dateWord($create['created'], $now); //转换为更通俗易懂的格式
    }else{
      echo Typecho_I18n::dateWord($update['modified'], $now);
    }
}

效果

在想要显示最后更新时间的位置加入以下代码即可:

最后更新:<?php get_last_update(); ?>

最终显示为类似如下的字段:

最后更新:4 秒前

需要能玩这个游戏的老手机吗?

微信: lost155805 QQ: 1558050515

添加新评论