不用插件实现WordPress页面读者墙

  • 2010-11-26
  • 1,283
  • 9
  • 0

首先用页面版读者墙代码建立一个读者墙模板,然后后台建立页面选择 commentswall模板即可。

利用主题自带的page.php也就是页面模板文件。打开page.php文件另存为commentswall.php 文件,在最前面加上下面的代码:

  1. <?php    
  2.   
  3.  /*   
  4.   
  5. Template Name: commentswall   
  6.  
  7. */    
  8.   
  9. ?>    

表示要用调用commentswall模板,然后再在文件里面适当的位置添加非插件版读者墙的代码:

  1. <!– start 读者墙 –>    
  2.   
  3. <?php    
  4.   
  5.     $query=“SELECT COUNT(comment_ID) AS cnt, comment_author, comment_author_url, comment_author_email FROM (SELECT * FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->posts.ID=$wpdb->comments.comment_post_ID) WHERE comment_date > date_sub( NOW(), INTERVAL 1 MONTH ) AND user_id=’0′ AND comment_author_email != ‘你自己的email地址’ AND post_password=” AND comment_approved=’1′ AND comment_type=”) AS tempcmt GROUP BY comment_author_email ORDER BY cnt DESC LIMIT 40″;    
  6.   
  7.     $wall = $wpdb->get_results($query);    
  8.   
  9.     foreach ($wall as $comment)    
  10.   
  11.     {    
  12.   
  13.         if$comment->comment_author_url )    
  14.   
  15.         $url = $comment->comment_author_url;    
  16.   
  17.         else $url=“#”;    
  18.   
  19.         $tmp = “<a href='”.$url.“‘ title='”.$comment->comment_author.” (“.$comment->cnt.“)’>”.get_avatar($comment->comment_author_email, 40).“</a>”;    
  20.   
  21.         $output .= $tmp;    
  22.   
  23.      }    
  24.   
  25.     $output = “<div id=’readerswall’><h2>Most Active Friends</h2>”.$output.“</div>”;    
  26.   
  27.     echo $output ;    
  28.   
  29. ?>    
  30.   
  31. <!– end 读者墙 –>    

注意修改其中你的“email地址”以及你需要显示的头像大小及数目。先保存好此commentswall.php文件上传到你所用的主题目录下,最后在后台新建一个页面,内容自定,最后在右侧选择使用的模板文件为commentswall即可。到此,wordpress免插件读者墙之页面版就完美实现了,效果还是看我的给我留言

熟悉代码的童鞋还可以自己定义commentswall.php文件,不一定完全引用page.php里的内容,媛诺诺是菜鸟,只好这样将就着用了。

评论

  • 文字阁回复

    有时候真的也是,架着一个博客就喜欢折腾,有时甚至花一整天去折腾,经常通宵达旦的都有
    🙄 只有折腾,才有满意

    • 媛诺诺回复

      同感,折腾无止境

  • 快速建站教程网回复

    好题材,收藏了! ❗

    • 媛诺诺回复

      诺诺也刚折腾的,想完善点,继续google去

    • 媛诺诺回复

      方便自己回访 😈

  • hit9回复

    十分感谢博主分享,已经按你的方法试验成功了,再一次感谢你!

发表评论