wordpress文章页添加过时提醒

请在后台-主题设置-文章页设置-添加左边栏模块

首页 » 网站相关 » WordPress » 正文

wordpress文章页添加过时提醒

在文章页single.php文件合适位置添加以下代码

<?
$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)) ){

未经允许不得转载:作者:tigh, 转载或复制请以 超链接形式 并注明出处 猫雅博客
原文地址:《wordpress文章页添加过时提醒》 发布于2019-07-16

分享到:
赞(0) 生成海报

评论 1

评论前必须登录!

  注册

  1. #1

    老铁,你抄了我的文章也不留出处,这样好吗

    豫章小站10个月前 (07-22)

长按图片转发给朋友

博客进行重整
由于现实繁忙博客已几个月没管理,最近由于疫情在家所以打算重整博客,在此也希望大家注意身体不要去人多的地方,不要感染了病毒了。
切换注册

登录

忘记密码 ?

切换登录

注册