Wordpress技巧:文章和評論日期顯示幾分鐘之前幾小時之前
阿新 • • 發佈:2020-12-20
對於一週更新數篇文章的站長來說,更友好的顯示時間很有必要。通常我們會在微博上看到釋出於1分鐘前、1個小時前等字樣,這樣的顯示對使用者來說很貼心,傳遞給使用者的感覺是這個站點一直活躍著,所以Wordpress站點也應該有這樣的實用技巧。
首先在主題的 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”,只要格式符合就行,但是wp有gmt時間制,所以才有了以上使用方式。