WordPress多种方式添加文章最后更新时间

首页 » WordPress » WordPress多种方式添加文章最后更新时间

WordPress在文章结尾添加更新日期的提示,显示多久没更新了,你可已修改一下显示的内容,对于很多内容我们可能会在不定的时间内进行修改补充,一般情况下我们会忽略这个操作的用户体验,修改补充后WordPress默认还是显示发布日期,而不会显示最后一次/上一次修改更新日期。

在你主题的function.php函数文件中添加代码。

文章结尾出现提示

//添加老文章提示信息
function old_content_message($content) {
$modified = get_the_modified_time('U');
$current = current_time('timestamp');
$diffTime = ($current - $modified) / (60 * 60 * 24);
if ($diffTime > 365) {
$content = $content.'<div class="warn" >本文最后更新于'.get_the_modified_time('Y年n月j日').
',已超过 1 年没有更新,涉及的内容可能已经失效!</div>';}
return $content;}
add_filter('the_content', 'old_content_message'); 

文章开头出现提示

//添加老文章提示信息
function old_content_message($content) {
$modified = get_the_modified_time('U');
$current = current_time('timestamp');
$diffTime = ($current - $modified) / (60 * 60 * 24);
if ($diffTime > 365) {
$content = '<div class="warn>本文最后更新于'.get_the_modified_time('Y年n月j日').
',已超过 1 年没有更新,涉及的内容可能已经失效!</div>'.$content;
}
return $content;
}
add_filter('the_content', 'old_content_message'); 

可以看到两者的区别就是调换了一下$content的位置,然后修饰加上css样式,添加到主题的style.css文件即可,这个样式可以根据自己的审美不同修改。

.warn {
color: #ad9948;
background: #fff4b9 url(img/warn.png) -1px -1px no-repeat;
border: 1px solid #eac946;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
font-size: 14px;
} 

在分享一下我使用的css样式,这里根据自己爱好添加,不喜欢的话,自己写一个css样式

.warn{margin-bottom: 10px;
padding: 8px 0;
background-color:#FDFBED;
border: 1px solid #faebcc;
color:#026E66;
font-size: 13px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
transition: all .2s ease-in-out;} 

那么,我们不想超过1年没更新显示,而是修改文章就会显示,这猴子那个方式显得更加完美一点:

function my_last_updated_date( $content ) {
 $u_time          = get_the_time( 'U' );
 $u_modified_time = get_the_modified_time( 'U' );
 $custom_content  = '';
 if ( $u_modified_time >= $u_time + 86400 ) {
 $updated_date   = get_the_modified_time( 'Y-m-j' );
 $custom_content .= '<div class="show-foot">
                 <div class="notebook">
                     <i class="fa fa-clock-o"></i>
                     <span>最后修改: 
              ' . $updated_date . '</span>
                 </div>
                 </div>';
 }
 $custom_content .= $content;
 
 return $custom_content;
}
 
add_filter( 'the_content', 'my_last_updated_date' ); 

此代码检查文章的发布日期和上次修改日期是否不同,如果修改过就会在文章开头提示更新日期。如果是,则显示帖子内容之前的最后修改日期。您可以添加自定义CSS以设置上次更新日期的外观样式。这是一个可以用作起点的小CSS:

.show-foot {
 margin:40px 0 30px;
}
.show-foot .notebook {
 font-size:12px;
 color:#938a8a;
} 

替换文章发布日期为上次修改日期

一般的主题将使用single.php,archive.php和其他模板文件来显示内容和元信息。您将查找负责显示日期和时间的代码。然后,您可以使用以下代码替换该代码,或者在主题的日期和时间代码之后添加该代码。

<?php
$u_time          = get_the_time( 'U' );
$u_modified_time = get_the_modified_time( 'U' );
if ( $u_modified_time >= $u_time + 86400 ) {
 echo "<div class="show-foot">
                 <div class="notebook">
                     <i class="fa fa-clock-o"></i>
                     <span>";
 the_modified_time( 'Y-m-j h:s a' );
 the_modified_time();
 echo "</span>
                 </div>
                 </div> ";
} ?> 

这里需要替换掉的是详情页文章显示发布日期的位置,css样式同上,或者自行修改。具体的效果不在贴图片,自行尝试修改。

未经允许不得转载:作者:鳄鱼君, 转载或复制请以 超链接形式 并注明出处 鳄鱼君
原文地址:《WordPress多种方式添加文章最后更新时间》 发布于2020-02-10

分享到:
赞(1) 赏杯咖啡

评论 抢沙发

6 + 1 =


文章对你有帮助可赏作者一杯咖啡

支付宝扫一扫打赏

微信扫一扫打赏

Vieu4.6主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录
切换登录

注册