• 注册
  • 个人说明:TA有点懒了,什么都没有写。
    关注 1 粉丝 0 喜欢 0 内容 256
    河南省·郑州市
    聊天 送礼

    新版界面开发进度

    14%
    其实就是啥也没写,只有想法,哈哈
    • 回帖总排行
    • 采纳总排行

    分享精彩给好友

    全部文章 关注:0 内容:1074

    WordPress代码构造函数将发布日期显示为多久前【转】

  • 查看作者
  • 打赏作者
  • 拉黑名单
    • 将日期显示为多久前可以让读者很方便的知道该信息的重要性,一条2年前发布的信息和2天前发布的信息价值是不一样的。发布时间显示为多久前比直接显示发布时间要直观得多,可以提高用户体验,具体的效果可以看看博客的评论日期显示。这个功能代码非常完善,是国内的热门主题大前端dux中使用的方法,直接复制就能用。

      WordPress代码构造函数将发布日期显示为多久前

      函数源码

      function _get_time_ago($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;
      		}
      	};
      }

      将上面的函数代码复制到你的主题目录下functions.php文件中即可正常使用,函数中需要传入一个时间字符串,这个字符串格式只要是标准的日期格式即可,这个函数会自定将其转换为时间戳,然后计算与当前时间的差异。

      使用方法

      在评论列表中使用:

        echo _get_time_ago($comment->comment_date);

      注意,$comment->comment_date方法输出评论时间必须在输出评论列表循环中使用,否则报错,你可以参考这篇文章:WordPress获取评论数据函数wp_list_comments详解。

      你需要登录,才能进行发帖操作