WordPress创建评论小工具(widget)及显示最活跃的用户

十二月 26
磊子 2011年 暂无评论

上一篇磊子讲了下怎么创建评论小工具以及不显示管理员回复内容的方法,这篇主要根据上一篇在做一下拓展,显示最活跃的用户即评论排行榜。还是那句话如果对创建小工具不熟悉的希望大家先看看这两篇文章http://www.favortt.com/wordpress-widget-shuoming.htmlhttp://www.favortt.com/wordpress-widget-jiangjie-2.html以及上一篇文章http://www.favortt.com/wordpress-widget-comment.html。因为这一篇主要是对上一篇做的修改,我们最主要修改的内容就是SQL语句,就可以实现这个功能。

还是先把代码给大家贴出来,然后在做下解释。

<?php

class Lei_ActiveUserWidget extends WP_Widget_Recent_Comments {

//这里就不多讲了,只是把名称换了下。
	function Lei_ActiveUserWidget() {
		$widget_ops = array('classname' => 'widget_active_user', 'description' => __('Lei - 最活跃的用户','leizi') );
		$this->WP_Widget('lei-active-user', __('Lei - 最活跃的用户','leizi'), $widget_ops);
	}

	function widget( $args, $instance ) {
		global $wpdb, $comments, $comment;

		extract($args, EXTR_SKIP);
		$title = apply_filters('widget_title', empty($instance['title']) ? __('本月最活跃的用户','leizi') : $instance['title']);
		if ( !$number =(int)$instance['number'] ){ $number = 15; }
//显示最活跃的用户的人数,最多默认是十五个人,这个可以在小工具那边进行设置。

        $comments = $wpdb->get_results("SELECT COUNT(comment_author) AS nums, 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_url != '' AND comment_type = '' AND user_id != '1' GROUP BY comment_author_email ORDER BY nums DESC LIMIT ".$number."");
//最重要的就是这个地方,根据评论的邮箱进行筛选,而且加了时间,即当前月份,并且不包括管理员。

?>
		<?php echo $before_widget; ?>
			<?php if ( $title ) echo $before_title . $title . $after_title; ?>
            <ul id="active-user">
			<?php
                if ( $comments ) {
                    foreach ($comments as $count) {
                        $comment_url = $count->comment_author_url;
                        echo '<li>' . '<a href="'. $comment_url . '" title="' . $count->comment_author .' 已发表 '. $count->nums . ' 条评论" target="_blank">' . get_avatar($count->comment_author_email, 30, '', $count->comment_author . ' 已发表 ' . $count->nums . ' 条评论') . '</a></li>';
                    }
                }
            ?>
            </ul>
		<?php echo $after_widget; ?>
<?php
	}
}
?>

这样我们就把最活跃用户小工具创建好了。当然我还需要激活引入文件什么的。这个在上一篇已经讲过了,不熟悉的大家再去了解下。后台大概效果如下图:
最活跃的用户
前台显示的大概效果如下图:

活跃用户显示效果

明天为大家讲解定制WordPress小工具(widget)标签云的方法之插件版(已汉化),希望大家多多关注!

» 版权所有©转载必须以链接形式注明作者和原始出处:磊子的博客 » WordPress创建评论小工具(widget)及显示最活跃的用户
» 地址:( Ctrl+C 复制 )
» 如果对本站感兴趣,请到网站右下方订阅本站,将为你带来更多精彩和实用的文章
» 如果您对这篇文章感兴趣,不妨小小的 捐助(Donate)一下博主吧,不管多少都是对博主最大的支持和鼓励哟,博主-磊子感谢大家的支持!!!

说点什么吧




订阅本站