有些文章因为时效性,时间久了容易出现偏差,同时可能会产生误导性。 因此,我们可以添加一个过时提醒

效果图


实现方法(二选一)


将该段代码插入single.php合适的位置

1
2
3
4
5
6
7
8
<?php
$daynum_post = floor((((time() - get_post_time('U')-28800)/86400)));
$days_modified = (((time() - get_post_modified_time('U')-28800)/86400));
$daynum_modified = floor($days_modified);
if($days_modified > 30){
echo '<div class="overdue">提醒:本文编写于 <strong>' . $daynum_post . '</strong> 天前,最后更新于 <strong>' . $daynum_modified . '</strong> 天前,其中某些信息可能已经过时</div>';
}
?>

或者改造一下,使其能直接插入functions.php

1
2
3
4
5
6
7
8
9
10
function overdue_message($text){
$daynum_post = floor((((current_time('timestamp') - get_post_time('U')-28800)/86400)));
$days_modified = (((current_time('timestamp') - get_post_modified_time('U')-28800)/86400));
$daynum_modified = floor($days_modified);
if($daynum_modified > 30){
$text = '<div class="overdue">提醒:本文编写于 <strong>' . $daynum_post . '</strong> 天前,最后更新于 <strong>' . $daynum_modified . '</strong> 天前,其中某些信息可能已经过时</div>'.$text;
}
return $text;
}
add_filter('the_content', 'overdue_message');

然后就是css样式,这是上图的效果

1
2
3
4
5
6
7
.overdue {
padding: 0 20px;
border-left: 5px solid #51aded;
background-color: rgba(243,243,243,.7);
line-height: 40px;
margin: 15px 0 0;
}

这里的代码都是大于30天显示提醒,你可以根据喜好自行修改