部分文章具有时效性,如活动、软件等,这类文章不仅无法帮助找到这篇文章的人,反而会误导他们,白白浪费时间与精力。当你的博客文章逐渐多起来时,也比较难于管理,所以给你的WordPress博客添加一个文章过时提醒吧~
开工
在主题包
single.php
文件中的the_content()
函数上方添加以下代码(Sakura主题在tpl/content-single.php
中修改)。<?php $getunix = get_post_modified_time('U')-2880; // 时区差8个小时 $days_old = (((time() - $getunix)/86400)); $daynum = floor($days_old); if ($days_old > 365) { // 注意 $days_old 这个参数单位是天,根据自己需要修改 echo '<div class="old-message">提醒:本文最后更新于 <a><strong>' . $daynum . '</strong></a> 天前,其中某些信息可能已经过时,请谨慎使用!</div><div class="expired-message">你似乎正在查看一篇很久远的文章。<br>为了你这样的访客,我特地保留了我的历史博文。不要笑话过去的我,用温柔的目光看下去吧。</div>'; } ?>
添加过时提醒的CSS样式
/* 文章过期提醒 */ .old-message { padding: 5px 10px; font-size: 15px; border: 1px solid #e2e2e2; background-color: #eee; border-left: 5px solid #00d1bf; color: #333; overflow: hidden } .expired-message { color: #31708f; background-color: #d9edf7; border-color: #bce8f1; border: 1px dashed #e0e0e0; padding: 1em 28px; margin-top: 5px; border-radius: 0 }
附加说明
如果只想在特定的分类显示提示,比如只在 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)) ){
俺请问下CSS样式加在哪? 是"外观"→"自定义"→"额外CSS"吗?
都可以,加在主题全局CSS里也行