在wordpress里有一个小工具,显示最新文章,不过这个是按最后发布的日期显示的。另外在wordpress循环中,也是按最后发布的日期显示的。但是对于有限项目中需要按最新更新的方式显示文章。对此,是必要的。能够有利于让用户更好的获取网站的第一手资讯。所以按最新更新文章显示是非常好的。下面提供一个函数:
把下面的代码放在functionsphp中:
[php]
function wpb_lastupdated_posts() {
// Query Arguments
$lastupdated_args = array(
‘orderby’ => ‘modified’,
‘ignore_sticky_posts’ => ’1′
);
//Loop to display 5 recently updated posts
$lastupdated_loop = new WP_Query( $lastupdated_args );
$counter = 1;
echo ‘<ul>’;
while( $lastupdated_loop->have_posts() && $counter < 5 ) : $lastupdated_loop->the_post();
echo ‘<li><a href="’ get_permalink( $lastupdated_loop->post->ID ) ‘"> ‘ get_the_title( $lastupdated_loop->post->ID ) ‘</a> ( ‘ get_the_modified_date() ’) </li>’;
$counter++;
endwhile;
echo ‘</ul>’;
wp_reset_postdata();
}
//add a shortcode
add_shortcode(‘lastupdated-posts’, ‘wpb_lastupdated_posts’);
[/php]
现在就可以在wordpress主题模版中使用下面的方式显示最新更新的文章了:
[php]
<php
if (function_exists(wpb_lastupdated_posts)) :
wpb_lastupdated_posts();
endif;
>
[/php]
如果不想修改wordpress主题模版文件,也可以直接在文章、页面、小工具里直接添加简码:
[lastupdated-posts]
第一步,在我们所使用主题的 functionsphp 文件最后一个>前中加入以下代码:
//时间格式多久以前function timeago($ptime) {
$ptime = strtotime($ptime);
$etime = time() - $ptime;
if ($etime < 1) return '刚刚';
$interval = array(
12 30 24 60 60 => '年前 (' date('Y-m-d', $ptime) ')',
30 24 60 60 => '个月前 (' date('m-d', $ptime) ')',
7 24 60 60 => '周前 (' date('m-d', $ptime) ')',
24 60 60 => '天前',
60 60 => '小时前',
60 => '分钟前',
1 => '秒前'
);
foreach ($interval as $secs => $str) {
$d = $etime / $secs;
if ($d >= 1) {
$r = round($d);
return $r $str;
}
};
}
第二步,打开主题文件singlephp文件,把原先显示时间的代码(如:<php the_time( 'Y年n月j日');>)改为以下代码即可:
<span title="<php the_time('Y年n月j日');>"><php echo timeago(get_gmt_from_date(get_the_time('Y-m-d G:i:s'))); >
</span>
你在主题里面中singlephp中 <php the_content(''); >语句上面删掉:<php the_time('M d, Y'); >,删掉time,date的相关代码,目前不知你的代码,我按照通用代码方式告知你删除那一句,请先注意备份
以上就是关于如何在wordpress中显示最新更新的文章全部的内容,包括:如何在wordpress中显示最新更新的文章、如何把wordpress的文章发布时间改成几分钟前、wordpress 什么时间发布的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)