HotNews pro主题侧边热门文章是按评论数多少调用的,调用全部文章,无时间段限制,会造成这个模块中的文章很长时间段内无变化,所以决定换个调用方法。简单窜改了一下守望的麦子的调用WP热评文章的SQL语句中的代码,这段代码可以只显示某时间段内热门文章排行,比如30天,比较合理一些。
把下面代码添加到functions.php中:
- // 热评文章
- function simple_get_most_viewed($posts_num=10, $days=30){
- global $wpdb;
- $sql = "SELECT ID , post_title , comment_count
- FROM $wpdb->posts
- WHERE post_type = 'post' AND TO_DAYS(now()) - TO_DAYS(post_date) < $days
- ORDER BY comment_count DESC LIMIT 0 , $posts_num ";
- $posts = $wpdb->get_results($sql);
- $output = "";
- foreach ($posts as $post){
- $output .= "\n<li><a href= \"".get_permalink($post->ID)."\" rel=\"bookmark\" title=\"".$post->post_title." (".$post->comment_count."条评论)\" >".cut_str($post->post_title,32)."</a></li>";
- }
- echo $output;
- }
然后,打开sidebar.php和sideba_a.php用:
- <?php simple_get_most_viewed(); ?>
替换:
- <?php $popular = new WP_Query('orderby=comment_count&caller_get_posts=4&posts_per_page=10'); ?>
- <?php while ($popular->have_posts()) : $popular->the_post(); ?>
- <a href="<?php the_permalink(); ?>"><?php echo cut_str($post->post_title,32); ?></a>
- <?php endwhile; ?>
其中:数字10是调用篇数,数字30是天数
下面是修改完成的替换文件,其中已包含上篇文章中的小墙
如果你的博客日志几乎无任何留言评论,可能会有些问题,酌情升级吧。
本站文章大部分为原创,用于个人学习记录,可能对您有所帮助,仅供参考!

我的微信
微信号已复制
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!




