同学们,我的博客终于又多了一抹色彩,那就是侧边栏的“本月水王”专栏,更多博友称之为读者墙,但是我只是把这个功能放在侧边栏,而不是单独列为一个页面,所以充其量只是一面“小墙”。
读者墙功能最近好像比较火,一方面可以鼓励访客留言,另一方面也方便博主回访。我最初是在林木木那里看到的这个功能、接着又分别在 whisperer 和 zwwoOoOo 那里看到了这个效果,有些心动,之后又在六维博客中再次看到了免插件实现读者墙的功能,于是惹起了我折腾 WordPress 的热血沸腾。
用插件实现的方法我就不多介绍了,我就爱玩代码:
一、函数部分:
将以下代码复制到 functions.php 中:
$passwordpost = " AND post_password=''";
$userexclude = " AND user_id='0' and comment_author != '万戈'";
$approved = " AND comment_approved='1'";
$shownumber = 24;
$counts = $wpdb->get_results("SELECT COUNT(" . $identity . ") 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 MONTH(comment_date)=MONTH(now()) and YEAR(comment_date)=YEAR(now())" .
$userexclude . $passwordpost . $approved . ") AS tempcmt GROUP BY " . $identity . " ORDER BY cnt DESC LIMIT " . $shownumber);
二、引用部分:
将以下代码复制到 sidebar.php 中:
<h3>本月水王</h3>
<ul class="ffox_most_active">
<?php if ( $counts ) : foreach ($counts as $count) :
echo '<li>' . '<a href="'. $count->comment_author_url . '" title="' . $count->comment_author . ' ('. $count->cnt . '评论)">' .get_avatar($count->comment_author_email,32).'</a></li>';
endforeach; endif;
?>
</ul>
</div>
三、样式部分:
以下样式仅作参考。
list-style:none;
float:left;
border:none;
padding-left:0;
width:41px;
background:none;
}
.sidebar .widget .ffox_most_active img.avatar {
width:32px;
height:32px;
}
就这样,免插件版的读者墙就实现了,效果可以见我的侧边栏(除了首页侧边栏)。其中代码和样式主要参考自 zwwoOoOo 的http://zww.me/archives/24671。


好东西 学习一下
评论数相同的不知道怎么排序的,我想把评论数相同但时间在后的排在前面,这个代码好像没说啊。。
不知道代码应该怎么写?
google "侧边栏读者墙 widget"你就知道啦
不知道换个name和website,邮箱不变,算不算同一个用户
算,是根据邮箱来的
这样都行
牛人!我也想弄一个
这个比较好,不用插件
如果不想放在首页,想新建一个页面叫“留言板”直接添加代码貌似不行,div的class需要改为什么呢?
class可以自定义,无所谓的
为何我加在inove的 functions.php 后面结果导致主题上面出现一排代码呢?
有没有加错位置呢?不要打断其他函数哟~
没有啊,就是加在末尾,是直接复制过去就行了吗?需要修改什么吗?
要放以结束符的?>的前面哦
我是代码小白,谢谢啦
我弄了半天也不成功
有样例不
这个楼盖的真高……想留个脚印都找不到地板在哪里……
把那些查询语句直接弄到sidebar里竟然好了
哈哈。copy过去玩玩。
恩,复制进去就可以了
原来这个就叫做读者墙啊
我又装上这个插件了
哼哼,早晚上面就有我
哈哈,已经有啦
昨天搞了半天,哈哈~
NND,回去也搞搞这个排行
就怕代码又加错位置了
后来又写过一篇修订版,你可以看看哈:
http://wange.im/readerwall-revision-for-wordpress.html
偷盗完成。
没偷成,代码不显示,原因不详。。
我又来了,,
这个东东……
我得搞一个 改天
呵呵
很多同学都已经用上啦
老万啊,见你对代码这么痴情,我就...嘿嘿...
我对代码不太感冒,想把它加在留言本的顶端,但又不会!只会用插件,现在使用的是生活点滴网站发布的读者墙插件,但它点击头像打开的链接,是在当前页,老大,您能不能看一下,把它改成在新窗口打开呢???
在新窗口打开只要在在a标签中添加target="_blank"就可以了
万大哥,这个加到页面里是同样的方法么?
恩,是的,加到页面就是整个版面的读者墙
加页面里是要加到single.php那些页面里吗?比如我一个留言页面,该怎么加?直接加入页面html里无效。再请教下!多谢!
single.php是日志页面,如果要加在留言页面,你需要新建一个页面模板,加在新的模板中,然后留言板用这个模板就可以了
又一次在万兄的帮助下,右边栏改版完成!
这是个好东西。
调了半天。。。怎么才能改css,让我页面的白边对齐呢?
在#sidebar .ffox_most_active li中加一句width:36.8px试试
哈,基本上对齐了。。。还差一点点。。。。改了几个数值,就是差这么一点点
测试了下,不成功,可能我的主题的代码调用函数不一样!
我也去给网站加个墙,另外,我做了一个win7的主题!欢迎万兄前来捧场!
不过有个问题。好像链接的title提示和头像的alt会冲突。鼠标放上去读取不了连接的title - -,但是不知道如何设置头像的alt信息为评论者信息
恩,不错,所以之后我又写了修订版:http://wange.im/readerwall-revision-for-wordpress.html
大哥 我用的inove主题 不知道在function哪里添加
加在functions.php里,不要打断其他函数的位置就行
为什么我没有显示啊
这是我自己加上去的,原主题没有此功能,你可以根据此教程添加
支持一下呵呵,不过这么一弄图片多了点,还是不放了
我图片用缓存了,不怕,哈哈
这个还蛮有趣的!重要的是“免插件”!
不错哦 !
为什么我弄不出这个效果呢,侧边栏几个空框框。
从理论上来说,这是通用的,任何主题都适用的~
好啊,让俺也来玩玩墙~
按照你的指示顺利完成任务!谢谢
呵呵,客气客气,有成果就好
刚在想,万头儿的pr什么时候升到4,然后我又多了一个pr4的友链,一抬头,pagerank空的,。。没载入,再刷新,还是空的,一下醒悟过来,啊!!!
是我连累你了雯雯,我对不起你啊
其实,对我投广告也是有影响滴。
我也连累了你呀,抱歉~
哈哈,开个玩笑而已。瞧你认真的。
能加我QQ吗? 991918018
http://imn.im/commenter
你看我这个页面,他是从右到左显示,有点郁闷。。。还有,这个头像显示,没有用本地缓存头像。。。
唉,还是用不了。。。郁闷,我想把这个单独放到一个页面,不知道怎么弄哦。。
放到单独页面也一样的,可以用插件,或者把这里函数的限制数量提高到999就可以了
我来了,willin发布的基本上用不了。。估计水平太菜,改不来。还是来这里看看。嘿嘿。
呵呵,其实我这个和willin大师的那个原理一样,你可以试试
博客不错,在此回来,订阅了。 我刚刚装了一个HOT FRIENDS插件,跟这个差不多,不晓得那个效率更高、速度更快!
应该说HOT FRIENDS更强大,这里的免插件读者墙只是提取其中的一个功能
哈哈,从我这里又可以跳回到他们几个那里~
跳出去了 ~~转了一圈 真的又回来了~~~
也谈不上是谁先用的了,因为之后我们都有出过修订版,比如说我的:
http://wange.im/readerwall-revision-for-wordpress.html
再比如说还有willin的:
http://willin.heliohost.org/?p=1282
这个很不错哦,之前一直是使用 hotfriend 插件来实现来着 呵呵 ~ 换主题后 插件没用用了,回头试试你的 代码 呵呵
现在有修订版了,你可以看修订版,更完美
超强的功能。这是显示所有访客的信息吗?
只要你的留言数量在前24名之内,就会上榜
OK,明白,还是基于留言者的统计。临时访客是不统计在内的。
我用的top commentators插件不太理想,显示上经常有问题,也不如你的这个美观,以后有时间改进一下。先谢了。
你的回复真快!赞!
很好很强大
而且可以鼓励访客留言哦
嗯。在Willin Ken的博客上看到的,不过貌似以前也有在留言板页面上调用的、是不是用同样的方法?
willin kan从我这里看了这个读者墙之后又小有改进,加上了头像缓存和按最近30天统计的方法,更强大了!
他的留言板是写死的,非调用,有所不同
源代码复制改造失败...
无法调出头像来.难道和主题融合度不好?
应该不会啊,你试试修订版吧,选择其中的通用版即可:
http://wange.im/readerwall-revision-for-wordpress.html
我也参照z大的作了一个侧边栏读者墙,感觉不错。貌似可以提高浏览者的留言的积极性。
不是MS啊,自从有了读者墙,我的访客留言猛增
当然,有不少是纯灌水为了上榜的。。。。
把PHP部分写成函数多好啊
怎么写呀?我对PHP不熟。。。。
兄弟,这个样式部分的代码该加到哪里去啊?
加在style.css中就可以了
不知道这个时间是怎么控制的啊
是不是按照所有的时间统计呢
我设置了按月统计,你也可以按季度或者按年统计
现在我用的wp kit cn 直接调用函数……但是没有显示头像,囧
wp kit on没有这个功能的吧?
囧,有啊
功能很强大的哦
但是我只折腾了一点点。
这个我老早用上了,已经挂了一个月啦,哈哈
wp真是越来月强大了啊
是啊,特别是DIY,适合我这种喜欢折腾的人呐
我喜欢这句.
$userexclude = " AND user_id='0' and comment_author != '万戈'";
这个不错,搬过去了
已经看到啦,哈哈,我排名榜首耶
原来能作弊啊
水王总是有我..~
你到哪里都是水王啊,哈哈
我的主题不适这个呵
你用的默认主题?好像是有点另类的感觉~
啊,我已经准备择日去掉读者墙~~
为什么呀,你的读者墙很有特色啊
因为,人员太固定了……
我得出不来呢 怪
拿走拿走~~~嘿嘿。
对于DZ主题可以照搬照抄,不用修改,哈哈
盗用了
呵呵,欢迎盗用,写出来就是为了分享的嘛
万戈果然是个视插件如粪土的人才
万戈这里 人气太旺了啊 !
都是些老朋友捧场,而且还有一半是我自己在灌水,嘿嘿
这个效果还挺不错呢,没有图片的会不会叉叉啊
不会的,我设置好了默认头像
我用的是zblog的 可惜了 不过收藏了
好多用zblog的嘛~不过我只对WP有研究,相信zblog应该也有相应的方法吧
恩恩,等你弄好了,我来看看有没有上榜,嘿嘿
不错,已经收藏了
可以试试哈,效果还挺不错的说
真强。不过能在首页看到的我头像也很棒啊。
挤挤,排前面去。
哈哈,加油盖楼啊
我的functions.php已经传承了3个主题了.
用别人的插件总有不舒服的时候.
WP的优点就在于DIY,我爱折腾,我爱WP,哈哈
WP扩展就是强大啊~
这就是为什么我喜欢折腾WP的原因~
老万,感谢你总是去我的小博留言,我最近除了工作,实在没有很大的精力去回复每一位朋友了,来你这留个言,就算是对你的支持表示感谢吧。
谢谢支持,留言只在于交流,工作重要,有空就来坐坐吧
小万,有没有发表实现首页和内容页右栏不同内容的文章教程?
有啊,我这里要啥有啥,哈哈:
http://wange.im/different-sidebar-in-different-pages.html
万戈兄的东西还真是多啊
把插件提取出来了
也不是完全提取的插件,稍有修改,但还是有些小问题有待解决
越看越好,很好的用户体验,不知道能不能移植到BO-BLOG上边
应该也有相应的方法,但是我没有研究过bo-blog,不是很清楚呢~
我没上榜啊~~~
那就要加油盖楼咯,挤进这前24名应该不是很难的哟~
哇,这个功能真不错呢,而且也漂亮。很好
你也可以试试哈,不是很难的
嗯,有机会我会试试的
好像我现在用的主题函数写的太多了,名字有冲突?调用失败了
等我自己写主题的时候用
自己写主题是个很好的尝试,我写过一个,因为太烂,没有发布~
自己写的主题用着熟悉
好东西啊,可惜我的不能用。
其他程序的博客应该也有相应的方法,不过我只研究过WP的,呵呵
是盖楼排行吗? 好东西哈。(Toss Life日志里的 标签 作者那行错位了,能不能帮我调整下哈。)
重新上传过style.css了?
是的。因为我误删了代码
OK,稍等一下,等会忙完我Q上呼你哈
哈哈,透彻,我很喜欢这种详细的教程代码
嘿嘿,谢谢,这些代码还需要改进,发现有些不足~等有结果之后还会再写一篇更新
等你写好了,我就来学习。我也喜欢折腾,只是技术不行。
真不错,这样很方便,强大的代码党!
都是参考你的呀,不过还有些小问题请教你一下
就是在IE下,鼠标移置头像上不能显示评论数,我想是缺一个alt,可是改了一下午都不成功,你有什么高招吗?
a 用 tittle="~~~"
img 用 alt="~~~"
吃定所有 browser.
谢谢willin大师,可是这里的img是直接用get_avatar调用的,我修改过这部分调用头像的代码,修改后alt是有了, 不过所有的头像都成默认的了~
我改用緩存, 忘了你們是用 get_avatar.
get_avatar 默認是:
<img alt='' src='http://gravatarurl_or_default'
class='avatar avatar-$size' height='$size' width='$size' />
http://codex.wordpress.org/Using_Gravatars
谢谢willin,我先在本地试试
IE6我不考虑所以没有去折腾了,willin大师指导就说明有戏了
为啥没有我的,投诉,哭,最近没电脑用,留言的机会也少了
哈哈,投诉无效,加紧盖楼吧
喔... 我馬上試試去!
willin也要大显伸手了,哈哈,到时我来看看有没有荣幸上榜
用上了, 但 $interval 是指什麼?
大师就是大师,眼尖啊,我都没注意,这个常量没有用到,应该不需要的吧,我去把它删了
万戈兄要给我发房产证,都已经盖了26楼!
哈哈,那谁给我发房产证呀,我盖的楼最多
阿门,
弄个前10名
呵呵,加油盖楼吧~
嘿嘿。。我原来也在榜。。。
排名还挺靠前的呢,呵呵
我要上墙~~~~~~~~~~~~~
呵呵,那就要加油咯,进前24名应该不是很难吧
呵呵不错的东西,要是能生成缓存之类的,每天只需要查询一次就好了
理论上是可以的,但是我不会,哈哈
老哥是用插件还是自己敲的代码?
呵呵.万哥果然是在折腾.
嘿嘿,当前还有一些小问题还没解决
这个墙比那个伟大的墙好多了。
哈哈,那是,此墙是友好,岂是GFW能比的
争取上榜
精神可嘉,值得鼓励,加油!
这个必须支持你,我喜欢这个功能,等下就集成到我的WP
谢谢,等你搞定后我来抢水王宝座
不错 支持 ~~
谢谢支持~
看着花花绿绿的墙,突然间我也想加一块.....
加吧加吧,我争取当水王
一过来进看到了这一块....好显眼...
不错,继续水一下!
恩,加油水,争取当水王哈
踩一脚,我也做了这个墙,呵呵
呵呵,最近很流行这个呀
哈哈,你的是小墙。
如果有一天我的墙被排满了多好啊……
你的墙没有人数限制的吗?
左踩踩,右踩踩……
好久没留脚印了
读者墙,人人喜爱,出自 cosbeta 之手。
这次,兄弟又显摆了一个技术!想必又一次 煽动 了一次许许多多的童鞋啊!
差点忘了,你也有一堵宏伟的墙,哈哈
看样子,你不懒哦!不知道这样适合所有主题不咯
对于折腾wp,我是一点也不懒的,呵呵
怪不得我没实现这个功能
原来我用的是hot friends那个插件,只能实现友情链接的排行
没用过hot friends,不过实现的原理应该都是差不多的吧
这个我在这z5o那看到的时候就心动了。。一直没时间行动
~~水王竟然没有老饕?
哈哈,同志还需努力啊
Google Chrome
我是大王!噢耶
怎么左边一侧全是空白???
强制刷新试试,新加入了样式,可能缓存更新不及时吧
哈哈,我在本地测试不成功啊。
我就是现在本地测试成功了才发布的,呵呵,就是还有些小问题没解决
不折腾
感觉这样免插件和不免插件本质上没什么区别,并没有带来效率的提升
反而修改php带来代码混乱和版本不统一
如果做成一个插件可以可插拔就最好了
我觉得还是用代码的自定义程度高一点
效果不错啊 看来方法很多
另外 鼠标悬浮上去的提示,title只在非IE下有用,IE下你再加个alt
恩,正在加呢,心急先把文章写下来了
哈哈 看来分享心情急切啊
你应该把头像缓存也整合进去
我本来想参考你的方法缓存的,但是好像并不需要,直接缓存了