另一种修改 WordPress 时刻表现为 “几天前”

时间:2014-01-26所属栏目: WordPress教程 来源: 热度:

之前记录过一种操作 human_time_diff() 函数改变时刻表现的方法,本日再记录一种可以或许实现让 wordpress 时刻表现为“几天前” “几分钟前”的表现方法。

这个要领也很简朴,它改变了 自身的表现方法,它对比之前先容的实现方法的上风是,它并纷歧味单调的表现 “几天前” ,在文章宣布十天后便规复了年代日类的原始表现方法。按照网站的配置方法可以选择性的行使这两种方法个中之一。

复制下面的代码到 functions.php 中:


// Changing the_time
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('y-m-d');
			return;
	}
	echo $past_date . $suffix;
}

标签:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)