Skip to content

WordPress免插件版读者墙

2010 四月 21
by 荒野无灯

这个东东已经有好多人写了。记录下来,作个记号,对google说:我曾经折腾过这个!

0×01:页面版读者墙(页面结构可根据自己风格修改):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
/*
Template Name: commentswall
*/

?>
<?php get_header(); ?>

<!-- BEGIN content -->
<div id="content">

    <!-- begin post -->
    <div class="single">

<!-- start 读者墙 -->
<?php
    $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";
    $wall = $wpdb->get_results($query);
    foreach ($wall as $comment)
    {
        if( $comment->comment_author_url )
        $url = $comment->comment_author_url;
        else $url="#";
        $tmp = "<a href='".$url."' title='".$comment->comment_author." (".$comment->cnt.")'>".get_avatar($comment->comment_author_email, 40)."</a>";
        $output .= $tmp;
     }
    $output = "<div id='readerswall'><h2>Most Active Friends</h2>".$output."</div>";
    echo $output ;
?>
<!-- end 读者墙 -->

    </div>
    <!-- end post -->
   
   
</div>
<!-- END content -->

<?php get_sidebar(); get_footer(); ?>

0×02:侧边栏版

1
2
3
4
5
6
7
8
9
10
11
12
13
<h2>活跃读者</h2>
<ul class="ffox_most_active">
<?php
$wall= $wpdb->get_results("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 != '荒野无灯' AND post_password='' AND comment_approved='1' AND comment_type='') AS tempcmt GROUP BY comment_author ORDER BY cnt DESC LIMIT 12");
foreach ($wall as $item)
{ $c_url = $item->comment_author_url;
if ($c_url == '')
$c_url = '#';
$mostactive .= '<li class="mostactive">' . '<a href="'. $c_url . '" title="' . $item->comment_author . ' ('. $item->cnt . 'comments)">' . get_avatar($item->comment_author_email, 40) . '</a></li>';
}
echo $mostactive;
?>
</ul>

来自ZWWoOoOo童鞋博客的侧边栏css 样式参考:

1
2
#sidebar .ffox_most_active li{ list-style:none; float:left; border:none; line-height:0; }
#sidebar .ffox_most_active img.avatar{ width:38px; height:38px; border:1px solid #ddd;padding:2px;margin:0 1px 0 0;}

相关文章参考:
木木 童鞋 《WordPress 读者墙插件:Great Friend Wall》
ZWWoOoOo童鞋:WordPress 免插件读者墙 willin 版本
willin童鞋:《Wordpress 免插件版側邊欄讀者牆》

喜欢这篇文章吗?

请订阅本站 RSS feed填写您的邮件地址,订阅我们的精彩内容:,欢迎点击这里捐赠以支持荒野无灯转播到腾讯微博 转播到腾讯微博

作者:荒野无灯
出处:Hacklog【Hacklog】

声明: 本站遵循 署名-非商业性使用-相同方式共享 3.0 共享协议. 转载请注明转自Hacklog【荒野无灯weblog】

本文链接: http://ihacklog.com/?p=3688

33 Responses Post a comment
  1. 二月 6, 2012

    看不懂,真心看不懂…没学过代码

  2. 十一月 3, 2011

    右边的框框是怎么能出来的

  3. 十月 29, 2011

    boss 还是有点不会啊 不知道代码加到哪里 求帮助 邮件我~~谢谢 :arrow: :arrow:

  4. 六月 21, 2011

    终于找到并完成了,大呼一口气啊…

  5. 六月 21, 2011

    很感谢你的分享,我也要尝试实现这个功能了~

  6. 三月 4, 2011

    博客的访问量很少,这个暂时还不需要。

  7. 一月 24, 2011

    没研究出来,我去搜插件算了

  8. 一月 9, 2011

    好东西,谢谢

  9. 十二月 10, 2010

    原来看过,现在有需要了,谢谢了 :neutral:

  10. 十月 10, 2010

    学习~~

  11. 八月 21, 2010

    date_sub( NOW(), INTERVAL 1 MONTH )
    这个是按30天来算的吧,也就是最近30天的留言

  12. 八月 21, 2010

    这个怎么让它在新窗口中打开读者墙里的网址啊?

  13. 疑问 permalink
    八月 7, 2010

    请问 如何设置显示多少时间的读者头像 比方 年 月 日
    还有个问题 请问如何添加target=’_blank’ 点击头像在新窗口打开呢?
    还有个问题 请问如何添加多个被排除的邮箱地址呢?

  14. 六月 29, 2010

    我发现这段代码

    1
    <!-- start 读者墙 -->。。。<!-- end 读者墙 -->

    会导致 div 标签失去配对,不知道怎么回事,看起来跟$output = “这句有关

  15. 六月 29, 2010

    从朵夫那里过来的 学习看看能不能用

  16. 六月 26, 2010

    来膜拜下大神,这次升级3.0,wp-read-wall插件失效了,折腾你这个页面版终于适合我的主题了。 :mrgreen:

  17. 六月 26, 2010

    好东西 收藏了,侧边和页面的分开了,比较全面

  18. 六月 9, 2010

    遇到一个问题:我的博客原来把侧边栏分了两栏,现在加入读者墙代码之后头像也分成两列,而不是平铺,请问如何解决

  19. 四月 26, 2010

    来研究了下,哈哈。

  20. 四月 25, 2010

    :wink: 试试你这个,页面版的怎么现在显示的头像个数?
    是那句 ORDER BY cnt DESC LIMIT 40吗?

    • 四月 26, 2010

      非常正确 :mrgreen: ,这个读者墙是按照评论者在一个月内的评论数量从大到小排名的。

  21. 四月 23, 2010

    弄的挺不错的:)改天我也试看看~

  22. 四月 22, 2010

    oh yeah~ ,我在墙上

  23. 四月 22, 2010

    很喜欢你写的所有免插件版本 呵呵
    回访了
    感觉用cms的主题不是很直观 个人建议

  24. 四月 22, 2010

    这个有点意思

  25. 四月 22, 2010

    参考了多个人写的读者墙,发现页面免插件的就你这个,这个挺好的。

  26. 四月 21, 2010

    啊哈,这个我也写过耶

Trackbacks & Pingbacks

  1. wordpress笔记之侧边栏读者墙 | i 水手
  2. Wordpress升级3.0后
  3. 我的inove主题侧边栏读者墙添加

Leave a Reply

Allowed Tags - You may use these HTML tags and attributes in your comment.

<a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <q cite=""> <strong>

 :wink:  :-|  :-x  :twisted:  :)  8-O  :(  :roll:  :-P  :oops:  :-o  :mrgreen:  :lol:  :idea:  :-D  :evil:  :cry:  8)  :arrow:  :-?  :?:  :!:

Note: You may use basic HTML in your comments. Your email address will not be published.

Subscribe to this comment feed via RSS