wordpress修改时间的显示格式为几天前

来自:互联网
时间:2018-08-29
阅读:

WordPress 本身调用时间的函数 the_time() 只能直接调用时间,通过他的 filter,我们可以让他显示为比较科学的几天前格式。

将下边的代码添加到 function.php 的最后一个 ?> 前即可:

/** 
 * WordPress 修改时间的显示格式为几天前 
 */ 
function Bing_filter_time(){ 
global $post ; 
$to = time(); 
$from = get_the_time(‘U’) ; 
$diff = (int) abs($to – $from); 
if ($diff <= 3600) { 
$mins = round($diff / 60); 
if ($mins <= 1) { 
$mins = 1; 
} 
$time = sprintf(_n(‘%s 分钟’, ‘%s 分钟’, $mins), $mins) . __( ‘前’ , ‘Bing’ ); 
} 
else if (($diff <= 86400) && ($diff > 3600)) { 
$hours = round($diff / 3600); 
if ($hours <= 1) { 
$hours = 1; 
} 
$time = sprintf(_n(‘%s 小时’, ‘%s 小时’, $hours), $hours) . __( ‘前’ , ‘Bing’ ); 
} 
elseif ($diff >= 86400) { 
$days = round($diff / 86400); 
if ($days <= 1) { 
$days = 1; 
$time = sprintf(_n(‘%s 天’, ‘%s 天’, $days), $days) . __( ‘前’ , ‘Bing’ ); 
} 
elseif( $days > 29){ 
$time = get_the_time(get_option(‘date_format’)); 
} 
else{ 
$time = sprintf(_n(‘%s 天’, ‘%s 天’, $days), $days) . __( ‘前’ , ‘Bing’ ); 
} 
} 
return $time; 
} 
add_filter(‘the_time’,’Bing_filter_time’);

上边的代码可以让 30 天内发布的文章显示为几天前,而过了 30 天即显示为正常的标准格式日期。

返回顶部
顶部