HotNews pro2.4版侧边热门文章替换补丁

2011年02月11日08:38:52 42 8,279

HotNews pro主题侧边热门文章是按评论数多少调用的,调用全部文章,无时间段限制,会造成这个模块中的文章很长时间段内无变化,所以决定换个调用方法。简单窜改了一下守望的麦子的调用WP热评文章的SQL语句中的代码,这段代码可以只显示某时间段内热门文章排行,比如30天,比较合理一些。

把下面代码添加到functions.php中:

  1. // 热评文章
  2. function simple_get_most_viewed($posts_num=10, $days=30){
  3. global $wpdb;
  4. $sql = "SELECT ID , post_title , comment_count
  5. FROM $wpdb->posts
  6. WHERE post_type = 'post' AND TO_DAYS(now()) - TO_DAYS(post_date) < $days
  7. ORDER BY comment_count DESC LIMIT 0 , $posts_num ";
  8. $posts = $wpdb->get_results($sql);
  9. $output = "";
  10. foreach ($posts as $post){
  11. $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>";
  12. }
  13. echo $output;
  14. }

然后,打开sidebar.php和sideba_a.php用:

  1. <?php simple_get_most_viewed(); ?>

替换:

  1. <?php $popular = new WP_Query('orderby=comment_count&caller_get_posts=4&posts_per_page=10'); ?>
  2. <?php while ($popular->have_posts()) : $popular->the_post(); ?>
  3. <a href="<?php the_permalink(); ?>"><?php echo cut_str($post->post_title,32); ?></a>
  4. <?php endwhile; ?>

其中:数字10是调用篇数,数字30是天数

下面是修改完成的替换文件,其中已包含上篇文章中的小墙

如果你的博客日志几乎无任何留言评论,可能会有些问题,酌情升级吧。

weinxin
我的微信
分享交流WordPress经验与技巧,关注前端设计与网站制作。仅用于功能演示。
Begin主题购买
Begin主题购买

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:42   其中:访客  32   博主  9   引用   1

    • 羽飞 5

      要的就是这个,速度换上!
      谢谢!

      • sand 1

        提个问题,我侧边栏添加腾讯微博,微博的名称错位了(本应在头像侧边,现在在头像下边)。怎么处理啊?http://www.qiongdese.tk/

          • 知更鸟 Admin

            @sand 不玩围脖,无聊
            还是自己折腾吧

          • 韩国 5

            谢谢博主分享。

            • 我漂亮吗 2

              等下试试

              • 陨落de芳菲 5

                ……
                想稍微问一问,这个怎么连草稿都会调出来?
                汗。

                  • 知更鸟 Admin

                    @陨落de芳菲 这段代码是基本与WP无关的PHP函数,直接读取SQL数据库
                    如果草稿也有评论的话,还真能调出来

                  • 网络红人 1

                    这主题给鸟哥整的越来越强大了。

                    • 工作室 3

                      这个主题细节越来越完善了

                      • aunsen 5

                        新年好,鸟哥!

                        • 歪歪苹果 4

                          等网速快了,俺去试试 ! 破网速,呜呜…

                          • 冰棱 1

                            博主的代码高亮是哪款插件啊,告诉我一下,我以前的不能用了.

                              • 知更鸟 Admin

                                @冰棱 看此
                                http://zmingcx.com/do-not-realize-wordpress-code-highlight-plugin.html

                              • yetone 1

                                我的正在提交评论的显示条怎么跑偏了?不能显示在评论框的下面了

                                • 晨光博客 5

                                  不错,我也改下!

                                  • satsun 3

                                    想跟鸟哥做个友情链接,有戏没??呵呵 我虽然是你忠实的主题支持者 但是日IP还没上百。呵呵 还有就是我的怎么装 2.4总是首页不显示啊 只是显示几张热门文章的图片下面的东西全没有了

                                    • namind 3

                                      鸟哥真好

                                      • 碎语人生 5

                                        不错,这个是要更改一下才行。

                                        • 凡夫俗子 3

                                          我是新人。
                                          鸟哥,这样也不叫本月热门啊,应该叫近期热门(最近30天)。
                                          嘿嘿

                                          • 爬山 1

                                            鸟哥,我有个问题,我能指定某篇文章到“热门文章”里去吗?(就是无视评论的多少~)

                                            • woallf 2

                                              我替换了一下,为什么草稿箱和回收站里的文章也显示出来了,求解答,谢谢!

                                              • Punkhippie 2

                                                请问如果改成以浏览数排行呢?

                                                • yoxu 5

                                                  已经更新,旁边的分享,能分享一下吗?

                                                  • 研报网 4

                                                    如果能用浏览量排序就好了,不知道怎能弄。

                                                    • 566 0

                                                      地方地方

                                                      • 明月登楼 6

                                                        鸟哥,为什么我这样设置好,没有效果呢!

                                                        • 有鱼 4

                                                          把草稿掉了出来,还是改回原来的了

                                                          • 倡萌 2

                                                            老大,请教一个问题,就是如果我想在文章列表输出文章的发布时间在与之间,需要如何添加呢?我实在是不会,希望老大帮帮忙
                                                            <!– $output .= "nID).”” rel=”bookmark” title=””.$post->post_title.” (“.$post->comment_count.”条评论)” >”.cut_str($post->post_title,32).” “; –>

                                                              • 倡萌 2

                                                                @倡萌 呵呵,查看了不少资料 终于找到了 使用的是 .get_the_time(‘m-d H:i’,$post->ID).搞定

                                                              • 倡萌 2

                                                                老大,我经常使用WLW发布文章,但是我要设置文章置顶时,总是还要登录后台设置,有些麻烦。我想,如果能在WLW发布文章的同时,添加一个 自定义域 直接实现置顶,不知道是否可行?最好是直接使用Wordpress默认的置顶定义。希望老大能帮帮忙,谢谢

                                                                  • 知更鸟 Admin

                                                                    @倡萌 这个嘛,只能去求微软帮忙…

                                                                  • 冰棱 1

                                                                    测试了,如果文章少的话,确实是可以输出自动草稿的。修改一下Sql语句就行了。
                                                                    // 热评文章
                                                                    //添加上AND post_status = ‘publish’后解决调出自动草稿问题
                                                                    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) get_results($sql);
                                                                    $output = “”;
                                                                    foreach ($posts as $post){
                                                                    $output .= “nID).”” rel=”bookmark” title=””.$post->post_title.” (“.$post->comment_count.”条评论)” >”.cut_str($post->post_title,32).”“;
                                                                    }
                                                                    echo $output;
                                                                    }

                                                                    • 学骨科 1

                                                                      其实我一直想问一下鸟哥,顶部下拉式菜单是怎么实现的,还有就是怎样才能让网页底部菜单与顶部菜单显示不同?期望回答!登陆一下你的网站实在是不容易和我的一样慢,我用的IX的主机!

                                                                        • 知更鸟 Admin

                                                                          @学骨科 参考教程
                                                                          http://zmingcx.com/wordpress3-0-using-the-navigation-menu-graphic-tutorials.html
                                                                          或者
                                                                          http://www.wopus.org/wordpress-deepin/tech/2149.html

                                                                      • 来自外部的引用: 1

                                                                        • HotNews pro主题2.4正式版 | 嗨!CC!| 我的CC生活记录!