添加一个活跃评论作者列表

水景一页这个基于 WordPress 的个人博客一直没怎么注重友情链接的建设,人气不是很旺。为了鼓励大家留言表达自己的观点,跟风创建了一个小小的活跃评论作者列表,链接到评论者提供的网页。列表放在了页面(包括首页)右下角的挂件里,算是对各位网友的一点回报吧。

目前选取的一年内的评论计数作为指标,取前十名评论最多的网友加入列表。根据网上的评论,这个“一年内”(12 MONTH)的计数不一定非常准确,我想这个应该无所谓吧,也不排除以后改成半年或者一个月这样的时间段。

创建列表时排除了网站的注册用户,也排除了没有提供有效网址的评论作者,这个应该比较好理解。虽然对网址有效性的检查不是非常完备,但是提供无效网址的网友,其评论数量应该也不多,估计不会有什么问题吧。

具体实现是采用了直接修改 WordPress 主题模板,加入了产生活跃评论作者列表的代码。代码根据露兜博客提供的无插件读者评论排行榜代码稍作修改,记录如下:

<?php
/**
* Active Comment Authors
*
* 2013.05.16
*/ ?>

<aside id="active_comment_author" class="widget widget_text">
    <h3 class="widget-title">活跃读者</h3>
    <ul>

<?php
/**
* WordPress制作读者评论排行榜
* @author: Ludou
* @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 12 MONTH )
        AND comment_approved = '1'
        AND comment_author_url != ''
        AND comment_type = ''
        AND user_id = '0'
    GROUP BY comment_author_email
    ORDER BY cnt DESC
    LIMIT 10");

$mostactive = '';

if ( $counts ) {
// 输出读者列表
    foreach ($counts as $count) {
        $c_url = $count->comment_author_url;
        $c_name = $count->comment_author;
        $c_cnt = $count->cnt;

        $mostactive .= '<li>' . '<a href="'. $c_url . '" title="' . $c_name .' 发表 '. $count->cnt . ' 条评论">' . $c_name . '</a>(' . $count->cnt . ')</li>';
    }
    echo $mostactive;
}
?>
</ul>
</aside><!-- active_comment_author -->
<style type="text/css"> <!--
    #active_comment_author ul li {
        list-style-type:none;
        float: left;
        margin: 0 5% 0 0 !important;
        padding: 5px;
        width: 40%;
    }
    #active_comment_author ul li:hover {
        background-color: #EDEDED;
    }
--> </style>

还没来得及修改网站的 style.css 样式表文件,所以直接把列表分成两栏的样式放在后头直接输出了。过两天有空了再慢慢弄。

目前对这个修改效果还比较满意,翻到页面底部看看吧。©

本文发表于水景一页。永久链接:<https://cnzhx.net/blog/most-active-comment-authors-list/>。转载请保留此信息及相应链接。

4 条关于 “添加一个活跃评论作者列表” 的评论

雁过留声,人过留名

您的电子邮箱地址不会被公开。 必填项已用 * 标注

特别提示:与当前文章主题无关的讨论相关但需要较多讨论求助信息请发布到水景一页讨论区的相应版块,谢谢您的理解与合作!请参考本站互助指南
您可以在评论中使用如下的 HTML 标记来辅助表达: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>