陈德馨

WordPress 时间显示格式为“xx前”的实现方法

815人参与 |分类: 站长百科|时间:2013年07月30日 14:12

这个相当有用,希望自己的文章时间显示格式像微博时间格式一样,它就可以;如果你发文频率很高,这个时间格式很是友好!刚刚发布的文章,时间显示为“1分钟前”,还有“1天前”、“1分钟前”、“1秒前”等等!

添加方法很简单,把以下代码贴入主题的functions.php,调用方法是wp默认的“the_time()”,不用修改。

//时间显示xx前
add_filter('the_time', 'past_date');
function past_date(){
$suffix='前';
$endtime='2419200';
$day = '天';
$hour = '小时';
$minute = '分钟';
$second = '秒';
if ($_SERVER['REQUEST_TIME'])
$now_time = $_SERVER['REQUEST_TIME'];
else
$now_time = time();
$m = 60; // 一分钟
$h = 3600; //一小时有3600秒
$d = 86400; // 一天有86400秒
$endtime = (int)$endtime; // 结束时间
$post_time = get_post_time('U', true);
$past_time = $now_time - $post_time; // 文章发表至今经过多少秒
if($past_time < $m){ //小于1分钟
$past_date = $past_time . $second;
}else if ($past_time < $h){ //小于1小时
$past_date = $past_time / $m;
$past_date = floor($past_date);
$past_date .= $minute;
}else if ($past_time < $d){ //小于1天
$past_date = $past_time / $h;
$past_date = floor($past_date);
$past_date .= $hour;
}else if ($past_time < $d*10){
$past_date = $past_time / $d;
$past_date = floor($past_date);
$past_date .= $day;
}else{
echo get_post_time('m-d');
return;
}
echo $past_date . $suffix;
}

来源:陈德馨博客(微信/QQ号:35435164),转载请保留出处和链接!

地址:

必填

选填

选填

◎已有 0 人评论,请发表您的观点。