You are here: Home » All Categories » WordPress » WP Trick » WordPress 免插件读者墙 willin 版本

WordPress 免插件读者墙 willin 版本

Dec 5th, 2009 21:33 | Leave a comment?(182) Go to comments

我以前写过关于免插件读者墙的文章,那个版本是按每月评论最多的读者来排序的,也就是每月1号会清零重新计算。文章链接:用代码武装你的wordpress [part 1]

willin 后来根据这个修改了一下,唯一不同的 willin 修改的是按照最近 30 天内评论最多的读者排序的,我觉得这样更适合“最活跃的读者”的定义,所以我今晚换为 willin 这个版本了

因为 willin 的是使用 willin 的简单 gravatar 头像缓存的基础上的代码,我特意改出 2 个版本:1 个是针对没有使用头像缓存的,1 个是使用了头像缓存的。

一、没有使用头像缓存的读者墙代码:

<h2>Most Active Friends</h2> <ul class="ffox_most_active"> <?php $counts = $wpdb->get_results("SELECT COUNT(comment_author) 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 != 'zwwooooo' AND post_password='' AND comment_approved='1' AND comment_type='') AS tempcmt GROUP BY comment_author ORDER BY cnt DESC LIMIT 12"); foreach ($counts as $count) { $c_url = $count->comment_author_url; if ($c_url == '') $c_url = 'http://zww.me/'; $mostactive .= '<li class="mostactive">' . '<a href="'. $c_url . '" title="' . $count->comment_author . ' ('. $count->cnt . 'comments)">' . get_avatar($count->comment_author_email, 40) . '</a></li>'; } echo $mostactive; ?> </ul>

说明:

  1. 里面添加了 2 个 class:ffox_most_active 和 mostactive,根据自己模板在 style.css 设置样式吧
  2. 里面的 http://zww.me 改为你自己博客的网址
  3. 代码里面“DESC LIMIT 12”的 12 是要现示的读者数量
  4. 代码里面的“zwwooooo”是指除博主以外的意思,替换为自己的 WP 用户名吧

我的 css 样式参考:

#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;}

二、使用了  willin 的简单 gravatar 头像缓存的读者墙代码:

<h2>Most Active Friends</h2> <ul class="ffox_most_active"> <?php $counts = $wpdb->get_results("SELECT COUNT(comment_author) 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 != 'zwwooooo' AND post_password='' AND comment_approved='1' AND comment_type='') AS tempcmt GROUP BY comment_author ORDER BY cnt DESC LIMIT 12"); foreach ($counts as $count) { $a = get_bloginfo('wpurl') . '/avatar/' . md5(strtolower($count->comment_author_email)) . '.jpg'; $c_url = $count->comment_author_url; if ($c_url == '') $c_url = 'http://zww.me/'; $mostactive .= '<li class="mostactive">' . '<a href="'. $c_url . '" title="' . $count->comment_author . ' ('. $count->cnt . 'comments)"><img src="' . $a . '" alt="' . $count->comment_author . ' ('. $count->cnt . 'comments)" class="avatar" /></a></li>'; } echo $mostactive; ?> </ul>

说明参考第一种

OK,CP吧 ,折腾吧

附 willin 的原文链接:《WordPress 免插件版侧边栏读者墙

声明: 除非注明,ZWWoOoOo文章均为原创,转载请以链接形式标明本文地址
本文地址: http://zww.me/archives/24732

Filed under

WP Trick

| Tags:

,

Related Posts

Most Popular

182 Comments.

⊕Leave a comment?
  1. 古墓候梅 古墓候梅 Internet Explorer 8.0Windows XP

    WP就是强大,有这么多告诉在为WP做贡献,而BO就可怜了。

    21楼
    • zwwooooo zwwooooo Firefox 3.5.5Windows XP

      没法子的事,人家游戏,而且喜欢折腾的人很多

  2. laofan laofan Internet Explorer 6.0Windows XP

    很不错的东西,虽然我没认真研究,但是我是要鼓励你一下

    22楼
  3. 世纪之光 世纪之光 Internet Explorer 8.0Windows 7

    图片太多了,容易让人感觉不爽,我就用hot-friends的链接云功能。

    23楼
    • zwwooooo zwwooooo Firefox 3.5.5Windows XP

      链接云也是很简单的,只要把头像改为名字就得了,但我喜欢头像

  4. 潇潇水云 潇潇水云 Google Chrome 3.0.195.33Windows 7

    Z大,鼠标移到评论者上时的效果实在太酷啦!!

    24楼
  5. 奋飞 奋飞 Firefox 3.5.5Windows XP

    折腾吧,
    折腾

    25楼
  6. 笑话 笑话 Firefox 3.5.5Windows XP

    呵呵,不喜欢折腾~~学习下还是可以的

    26楼
  7. Hobo Hobo Firefox 3.5.5Windows XP

    东西不错呵呵,等我换空间了一定加上

    27楼
  8. Pray Pray 360Safe ExplorerWindows XP

    这代码挺不错的

    28楼
  9. 麦小芽 麦小芽 Internet Explorer 8.0Windows XP

    我先标记一下,用的时候再来取,呵呵!

    29楼
  10. 铵铵 铵铵 Internet Explorer 7.0Windows XP

    :lol: 使用中.

    30楼
  11. 锋子 锋子 Internet Explorer 7.0Windows Vista

    :sad: 按照你的文章 弄了 发现 有点小问题~ Willin的cp过去不行,万戈的也比行,用你说的显示了 可是评论里的头像 除了我的都不显示了~~~郁闷

    31楼
  12. 锋子 锋子 Internet Explorer 7.0Windows Vista

    :razz: 行了 谢谢 你的好文章

    32楼
  13. licream licream Google Chrome 4.0.249.4Windows 7

    谢谢。已经弄好 了。是显示每月的吗?

    33楼
    • zwwooooo zwwooooo Firefox 3.5.5Windows XP

      @licream 我文章里面说了,willin版本是按最近30天计算的,所以不是按自然月计算的。你要自然月计算的代码参考我以前发的文章:用代码武装你的wordpress [part 1]

    • Aaron Aaron Firefox 3.5.7Windows 7

      你好....我的博客用了你的方法以后,,出现的并不是其他读者墙的样式,效果请看下我的博客,,,希望能指点一下.谢谢

    • zwwooooo zwwooooo Firefox 3.5.6Windows XP

      @Aaron 我修改过代码了,你注意看看头像的函数对不对,正确的是下面的:

      get_avatar(get_comment_author_email('comment_author_email'), 40)

  14. 超人 超人 Google Chrome 4.0.249.78Windows 7

    :!: 现在都搞 gravatar缓存了...

    34楼
  15. 疾风 疾风 Firefox 3.6.2Windows 7

    怎么样屏蔽某个人啊?

    35楼
    • zwwooooo zwwooooo Google Chrome 4.1.249.1045Windows 7

      @疾风 comment_author != 'zwwooooo'里面的 zwwooooo 改为你要屏蔽的某个人,多用户用英文逗号分开,如

      comment_author != 'zwwooooo,abc,123'

    • 疾风 疾风 Firefox 3.6.2Windows 7

      @zwwooooo

      谢谢你 ^_^

      受你的启发我把一个卖减肥药的email 给屏蔽了 嘿嘿~··

    • zwwooooo zwwooooo Firefox 3.6.2Windows 7

      @疾风 我直接扔黑名单

  16. 朵未 朵未 Maxthon 2.0Windows XP

    先收藏~ 呵呵

    36楼
  17. young young Firefox 3.6.3Windows XP

    没改好。不显图。可能是主体样式差别大。用了一个其他的。呵呵。不过好像修改样式表不起作用。想给图片加个边框

    37楼
    • young young Firefox 3.6.3Windows XP

      @young 第一个不缓冲的可以了,但图片挨着。我的样式表好像没改对

    • zwwooooo zwwooooo Firefox 3.6.2Windows 7

      @young 根据自己主题改css

    • young young Firefox 3.6.3Windows XP

      @zwwooooo
      请教:
      我的主题是inove,我改成缓冲的。图也显了。格式改不好。我把代码放在

      Most Active Friends

      样式
      #northsidebar .widget.ffox_most_active li
      {
      list-style:none;
      float:left;
      border:none;
      line-height:0;
      }
      #northsidebar .widget.ffox_most_active img.avatar
      {
      width:38px;
      height:38px;
      border:1px solid #ddd;
      padding:2px;
      margin:0 1px 0 0;
      }
      结果 图片格式受原#siderba li 影响,要换行,背景图小圆点也显。

  18. young young Firefox 3.6.3Windows XP

    不好意思,代码提交不了。

    代码位置

    样式表应该大体怎么改

    38楼
  19. young young Firefox 3.6.3Windows XP

    @young 这下行了,
    div id="sidebar"
    div id="northsidebar" class="sidebar"
    div class="widget"
    代码
    /div
    /div
    /div
    大体是这样,我不懂css,猜着写成
    #northsidebar .widget.ffox_most_active li
    {
    list-style:none;
    float:left;
    border:none;
    line-height:0;
    }
    #northsidebar .widget.ffox_most_active img.avatar
    {
    width:38px;
    height:38px;
    border:1px solid #ddd;
    padding:2px;
    margin:0 1px 0 0;
    }

    39楼
    • zwwooooo zwwooooo Firefox 3.6.2Windows 7

      @young iNove的要先取消它的一些css属性,如:取消li的背景background:none;

      要控制line-height

    • young young Firefox 3.6.3Windows XP

      @zwwooooo
      thanks.
      我感觉现在是#northsidebar .widget.ffox_most_active 对不对?好像不起作用

    • zwwooooo zwwooooo Firefox 3.6.2Windows 7

      @young 肯定不对 #northsidebar .widget.ffox_most_active

      这样(注意空格)
      #northsidebar .widget .ffox_most_active

    • young young Firefox 3.6.3Windows XP

      @zwwooooo
      谢谢!起作用了。我再调整下。呵呵

    • zwwooooo zwwooooo Firefox 3.6.2Windows 7

      @young 慢慢折腾

    • young young Firefox 3.6.3Windows XP

      @zwwooooo
      多谢指导,折腾得差不多了,不知能不能经受住检验。我自己在本地测了26个评论者。呵呵。刚把网站的也更新了,有错再折腾。 :smile:

  20. xiao3 xiao3 TheWorld BrowserWindows XP

    再来取经! :razz:

    40楼

Leave a Reply


Trackbacks and Pingbacks: