wordpress文章頁頂部新增過時提醒
阿新 • • 發佈:2019-01-08
最終實現效果
在文章頁single.php檔案合適位置新增以下程式碼
<? //原文轉載自:https://blog.mydns.vip/954.html $getunix = get_post_modified_time('U'); $bj_date = 8*60*60; //時差 $days_old_sum = ((time() - $getunix + $bj_date)); $days_old = (($days_old_sum/86400)); $daynum = floor($days_old); if ($days_old > $old_message_time && !in_category(67) ) { echo '<div class="old-message">本文最後更新於'.get_post_modified_time('Y年n月j日').',已超過'.$daynum.'天沒有更新,如果文章內容失效,請反饋給我們,謝謝!</div>'; } ?> //注意$days_old這個引數單位是天,根據自己需要修改
利用get_post_modified_time() 函式獲取文章的最後修改時間,'U'為時間戳。文章在釋出後進行過修改,比如修改標籤、內容等都會更新時間,但獲取到的時間戳是當前時間+8小時,即當前真實時間+時區,測試了好幾個都是一樣的效果,沒有找到有效方法。由於獲取到的修改時間戳多加了八小時,$days_old_sum減去修改時間時會多減8小時,所以定義了一個北京時區的時差$bj_date,再把$bj_date加上就是真實的時間,利用floor取整就是具體天數了。如果有誰知道直接獲取到正確的修改時間戳,煩請留言告知站長。
在CSS裡面新增樣式
.old-message{padding:10px;color: #DB7C22;font-size: 16px;background: #FFFCEF;border: solid 1px #FFBB76;border-radius: 2px;box-shadow: 0 0 3px #ddd;margin:10px;}
樣式尺寸可以根據自己需要調整,完成以後就是上面的圖片效果,如果有什麼問題可以給站長留言。
其他:
如果只想在特定的分類顯示提示,比如只在 ID 為 8 的分類的文章顯示提示資訊,可以將if判斷語句修改為:
if($days_old > 365 && in_category(8) ){
是多個分類,比如在 ID 為 7、8、9的分類文章顯示提示資訊,可以使用陣列形式:
if($days_old > 365 && in_category(array(7,8,9)) ){
如果要排除某些分類,比如在 ID 為 7、8、9以外的分類文章顯示提示資訊,可在 in_category 前新增“!”
if($days_old > 365 && !in_category(array(7,8,9)) ){
轉載至https://blog.mydns.vip/954.html 有什麼問題可以找原作者。