WordPress美化:显示文章具体发表时间

一周发布数篇文章,需要很友好的时间显示,以及混淆视线,你木看错,我写这篇文章就为了这个!

大前端默认的是 xx分钟前、xx小时前、xx天前、xx周前、xx月前、xx年前。。

我修改的 :

以下为演示:

默认格式

a1

修改后格式

a2

 

 

默认格式代码

主题的 functions.php中添加

function timeago( $ptime ) {
    $ptime = strtotime($ptime);
    $etime = time() - $ptime;
    if ($etime < 1) return '刚刚';     
    $interval = array (         
        12 * 30 * 24 * 60 * 60  =>  '年前 ('.date('Y-m-d', $ptime).')',
        30 * 24 * 60 * 60       =>  '个月前 ('.date('m-d', $ptime).')',
        7 * 24 * 60 * 60        =>  '周前 ('.date('m-d', $ptime).')',
        24 * 60 * 60            =>  '天前',
        60 * 60                 =>  '小时前',
        60                      =>  '分钟前',
        1                       =>  '秒前'
    );
    foreach ($interval as $secs => $str) {
        $d = $etime / $secs;
        if ($d >= 1) {
            $r = round($d);
            return $r . $str;
        }
    };
}

列表页和文章页面使用方法:

适用于 index.php/search.php/tag.php/single.php/page.php/author.php/category.php

在需要显示时间的地方替换成以下,注意需要放在?php代码块中:

 

echo '发表于 '.timeago( get_gmt_from_date(get_the_time('Y-m-d G:i:s')) );

评论区域使用方法:

在需要显示时间的地方替换成以下,注意需要放在评论循环内:

echo '发表于 '.timeago( $comment->comment_date_gmt );

此函数传值格式为“2013-11-11 11:11:11”,只要格式符合就行.

修改的函数代码

在主题的functions.php中添加上一版本相同内容,也可以不用添加。

然后再文章页指定位置添加调用:

<?php the_date('Y-m-d H:i l'); ?>

 附录:WordPress的时间函数

文章的时间函数为:
<?php the_time() ?>

评论的时间函数为:
<?php comment_date() ?>

评论的日期函数为:
<?php comment_time() ?>

一个典型的时间函数实例为以下代码:
<?php the_time(’F jS, Y’) ?>

单引号内的代码即为时间参数

 

WordPress的全部时间参数及显示效果

* a代表小写的英语的上下午,如am、pm
* A代表大写的英语的上下午,如AM、PM
* d代表英语的日期(小于10仍为两位数写法),如05、12
* D代表中文的星期,如五、七
* F代表中文的月份(包括“月”这个字),如五月、十二月
* g代表英语的小时(小于10为一位数写法),如5、12
* G代表英语的小时(小于10仍为两位数写法),如05、12
* h代表英语的分钟(小于10为一位数写法),如5、12
* H代表英语的分钟(小于10仍为两位数写法),如05、12
* j代表英语的日期(小于10为一位数写法),如08-02-09
* l代表中文的星期(包括“星期”这两个字),如星期五、星期七
* m代表英语的月份(小于10仍为两位数写法),如05、12
* M代表英语的月份(以单词的形式显示),如Jun
* n代表英语的月份(小于10为一位数写法),如5、12
* O代表英语的时区,如+0800
* r代表完整的日期时间,如Tue, 06 Jun 2006 18:37:11 +0800
* S代表日期的序数后缀,如st、th
* T代表英语的时区(以单词的形式显示),如CST
* w代表英语的星期,如5、7
* W代表周数,如23
* y代表两位数年份,如07、08
* Y代表四位数年份,如2007、2008
* z代表天数,如156

发表评论
加载中...
  • 感谢楼主 11个月前 (12-26)

    帮了我大忙,已添加时间…感谢无双分享,祝愿楼主一生富贵!

  • 陈林の博客 3年前 (2014-09-15)

    替换的代码与原来是一样的

    查看对话
    • 微饭君 微Fan 3年前 (2014-09-15) 官方

      可能这个方式有问题了,明天更新下。

    • 微饭君 微Fan 3年前 (2014-09-15) 官方

      文章标题右移试试这个:http://www.weeiy.com/wordpress-title-links-smooth-right.html

    • sd 2个月前 (09-22)

      换的代码与原来是一样的

  • 微饭君 微Fan 4年前 (2014-01-03) 官方

    :eek: 关闭了多说。。

    查看对话
    • 微饭君 微Fan 4年前 (2014-01-03) 官方

      :lol: 所以测试一下~

相关文章