首页 » 建站技术 » WordPress » 浏览内容

WordPress添加评论之星读者墙


2010-12-23 23:41:41 2,471 0 发表评论 字体: 作者:C.K.
标签: WordPress

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

首先,我们来修改一下Tstyle的css样式,打开style.css,加入下面的代码:

/* 读者墙 */
  • #hotfriends {
  •    text-align:center;
  • }
  • #hotfriends ul {
  •    padding:7px;
  • }
  • #hotfriends ul li {
  •    float:left;
  •     list-style:none outside none;
  •     margin:6px;
  •     padding:0;
  • }
  • #hotfriends h3 {
  •    font-size:15px;
  •     margin:7px 7px 0;
  • }
  • /* 读者墙代码结束 *
  • 下面在文章页的侧边栏添加读者墙,打开single.php,加入下面的代码即可(注:把代码中的邮箱地址example@gmail.com换成你自己的!):

    <div id="hotfriends">
  •     <ul>
  • <?php
  • /**
  •  * WordPress制作读者评论排行榜
  •  * @author: Ludou  
  •  * @Email : zhouzb889@gmail.com
  •  * @Blog  : http://www.ludou.org/
  •  */
  •     global $wpdb;
  •     // 执行数据库查询
  •     $counts = $wpdb->get_results("SELECT COUNT(comment_author) AS cnt, comment_author, comment_author_url, comment_author_email
  •         FROM {$wpdb->prefix}comments
  •         WHERE comment_date > date_sub( NOW(), INTERVAL 1 MONTH )
  •             AND comment_approved = '1'
  •             AND comment_author_email != '524267@gmail.com'
  •             //AND comment_author_url != ''
  •             AND comment_type = ''
  •             //AND user_id = '0'
  •         GROUP BY comment_author_email
  •         ORDER BY cnt DESC
  •         LIMIT 8");
  •     $mostactive = '';
  •     if ( $counts ) {
  •     // 输出读者列表      
  •         foreach ($counts as $count) {
  •             $c_url = $count->comment_author_url;
  •             $mostactive .= '<li>' . '<a href="'. $c_url . '" title="' . $count->comment_author .' 发表 '. $count->cnt . ' 条评论" target="_blank">' . get_avatar($count->comment_author_email, 35, '', $count->comment_author . ' 发表 ' . $count->cnt . ' 条评论') . '</a></li>';
  •         }
  •         echo $mostactive;
  •     }
  • ?>
  •     <div style="clear:both;"></div>
  •     </ul>
  • </div> <!-- / hotfriends -->

  • 一、限定排行榜的时间范围

    第15行代码中 INTERVAL 1 MONTH 用于只统计最近一个月的评论,这个排行榜中只显示一个月内最活跃的读者,如果你想自定义时间范围,可参照下表对其进行更改:

    INTERVAL 1 MONTH    最近一个月内
  • INTERVAL 3 YEAR     最近3年内
  • INTERVAL 2 WEEK     最近2周内
  • INTERVAL 6 DAY      最近6天内
  • 如果你只想显示本月的排行榜,请将第08行代码改成:

    WHERE MONTH(comment_date)=MONTH(NOW()) and year(comment_date)=year(now())

    二、限定评论是否审核

    第16行代码 AND comment_approved = ‘1’ 用于限定只统计已经通过审核的评论,如果你想统计未通过审核的评论,你可以将这一句代码删除。

    三、排除某些读者

    第17行代码 AND comment_author_email != ‘example@example.com’ 用于排除不计入榜单的评论者,例如博主自己,将email地址改成博主的Email即可。这里我觉得使用评论者的Email作为限定条件比昵称更好,毕竟头像也是由Email决定的。如果你想排除多个评论者,可以多写几行类似的代码,Email不同即可,如:

    AND comment_author_email != 'example1@example.com'
  • AND comment_author_email != 'exam2@exam.com'
  • 四、是否包括不填URL的评论者

    第18行代码 AND comment_author_url != ” 排除没填URL的评论者,也就是那些没有网站的评论者将无法进入你的排行榜。

    五、限定评论的类型

    第19行代码 AND comment_type = ” 限定了评论的类型,这行代码排除了 trackback 和 pingback,如果你还想统计这两种评论类型,你可以将此行代码删除。

    六、是否包含博客的注册用户

    第20行代码 AND user_id = ‘0’ 使排行榜中不包含博客的注册用户(包括博主),注册用户将无法进入你的排行榜。如果你的博客有大量的注册用户,或者你的博客只有博主这个注册用户,你可以将此行代码删除。

    七、限定排行榜中的人数

    第23行代码中 LIMIT 15 用于限定排行榜中的人数,这里限制输出15位读者,你可以根据需要做一下更改。

    八、限制头像的大小

    第30行代码中的 55 限定了输出的头像大小为 55 * 55,如果你不需要这么大的尺寸,你可以将这个数值改小点。

    最后的预览效果为(调用的是30天最活跃的读者):

    WordPress添加评论之星读者墙和评论框背景图 2010 09 09 00508

    更多的详细说明请查看:露兜博客的文章

      网站统计 Statistics

      • 创建时间: 2005年1月3日 距今4971 天
      • 日志总数: 2461
      • 评论总数: 630
      • 标签总数: 654
      • 链接总数: 273
      • 最后更新: 2017-7-1 18:16:33
      • 您是本站第 13798036 位访客

      广告区 Guǎng Gào