就在刚才,Skyoy 给我留言说,如何统计 WordPress 中排除管理员以后的评论数?用过 Z-blog 的朋友都知道,Z-blog 的日志评论数是只统计管理员以外的留言者的评论数量,所以初次来到小站的 Z-blog 用户都会惊叹到,哇,你的访客评论数真不少耶~不过其实我的每篇日志也就一、两百条的评论,而我对每条留言都会一一回复,所以评论数中有一半是我自己在灌水,真实的访客留言数量并没有显示的那么多,明显虚高。
那么如何排除 WordPress 中管理员自己的留言数,显示真实的访客留言数呢?其实前辈 ishawn 已经给出了答案,我就做个二传手啦~
把以下代码复制到 WordPress 主题文件夹中的 functions.php 的<?php 和 ?> 之间:
function no_admin_number($no='', $one='', $twomore='') {
global $wpdb, $tablecomments, $post;
$comments = $wpdb->get_results("SELECT * FROM $wpdb->comments WHERE comment_post_ID = $post->ID AND comment_type = '' AND comment_approved = '1' AND comment_author != '博主姓名'");
$cnt = count($comments);
if (!$cnt)
echo $no;
elseif ($cnt == 1)
echo $one;
else
echo str_replace("%", $cnt, $twomore);
}
global $wpdb, $tablecomments, $post;
$comments = $wpdb->get_results("SELECT * FROM $wpdb->comments WHERE comment_post_ID = $post->ID AND comment_type = '' AND comment_approved = '1' AND comment_author != '博主姓名'");
$cnt = count($comments);
if (!$cnt)
echo $no;
elseif ($cnt == 1)
echo $one;
else
echo str_replace("%", $cnt, $twomore);
}
然后在 comments.php 或者其他地方,替换原本的
<?php comments_number('No Comment', 'One Comment', '% Comments' );?>
替换成:
<?php no_admin_number('No Comment', '1 Comment', '% Comments');?>
这样就可以了,Wordpress 的评论数也就不会显得特别夸张了,不过评论数本来就不多的朋友可以无视这个方法,把自己的留言数也撑撑场面,哈哈。
-
Wordpress 之欢迎 OOXX 归来2011年01月19日 -
Wordpress 评论数之排排坐吃果果2010年12月1日 -
给 Wordpress 评论框添加 TinyMCE 编辑器2010年10月3日 -
Wordpress 最新评论与您的足迹二体合一2010年09月5日