星速云wordpress文章应该是不断修改的,尤其是技术文章以及软件下载文章,很多东西都是需要按需更新,比如说下载链接,昨天发布的百度网盘外链今天就失效了,我们不得不更换链接,这就涉及到再次编辑文章,那如何让用户知道哪篇文章修改过呢?RT:不用插件给wordpress调用近期编辑过的文章首先还是给wordpress的主…
星速云wordpress文章应该是不断修改的,尤其是技术文章以及软件下载文章,很多东西都是需要按需更新,比如说下载链接,昨天发布的百度网盘外链今天就失效了,我们不得不更换链接,这就涉及到再次编辑文章,那如何让用户知道哪篇文章修改过呢?RT:不用插件给wordpress调用近期编辑过的文章
首先还是给wordpress的主题的function.php添加以下功能代码:
// 最近编辑过的文章function recently_updated_posts($num=10,$days=7) {if( !$recently_updated_posts = get_option('recently_updated_posts') ) {query_posts('post_status=publish&orderby=modified&posts_per_page=-1');$i=0;while ( have_posts() && $i<$num ) : the_post();if (current_time('timestamp') - get_the_time('U') > 60*60*24*$days) {$i++;$the_title_value=get_the_title();$recently_updated_posts.='<li><i class="icon-cai"></i><a href="'.get_permalink().'" title="最终修改于'.get_the_modified_time('Y.m.d G:i').'">'.$the_title_value.'</a></li>';}endwhile;wp_reset_query();if ( !empty($recently_updated_posts) ) update_option('recently_updated_posts', $recently_updated_posts);}$recently_updated_posts=($recently_updated_posts == '') ? '<li>请拭目以待.</li>' : $recently_updated_posts;echo $recently_updated_posts;}function clear_cache_zww() {update_option('recently_updated_posts', ''); // 清空缓存}add_action('save_post', 'clear_cache_zww'); ///修改文章时触发清空缓存
然后在前端页面展示的地方添加调用代码:
<ul><?php if ( function_exists('recently_updated_posts') ) recently_updated_posts(7,35); ?></ul>
7表示调用七篇,35表示在35天之内编辑过的文章。这功能是带有缓存的,只有后台重新编辑文章之后才会清除缓存,这就节省了许多数据库查询工作,前台完全是静态展示。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)