WordPress 获取文章的评论人数

前些天,倡萌和恒创科技联合举办了一次踢楼活动(详见),活动结束后要统计此次参与踢楼的用户数量,也就是要统计提交了评论的用户数,在网上搜索了一下,发现 zwwooooo 大叔已经折腾过这个功能,试了一下,还可以用,分享过来,有需要的朋友不妨试试。

直接将下面的函数添加到当前主题的 functions.php

 

/* 获取文章的评论人数 by zwwooooo | zww.me */

function zfunc_comments_users($postid=0,$which=0) {

$comments = get_comments('status=approve&type=comment&post_id='.$postid); //获取文章的所有评论

if ($comments) {

$i=0; $j=0; $commentusers=array();

foreach ($comments as $comment) {

++$i;

if ($i==1) { $commentusers[] = $comment->comment_author_email; ++$j; }

if ( !in_array($comment->comment_author_email, $commentusers) ) {

$commentusers[] = $comment->comment_author_email;

++$j;

}

}

$output = array($j,$i);

$which = ($which == 0) ? 0 : 1;

return $output[$which]; //返回评论人数

}

return 0; //没有评论返回0

}

调用方法:

1

<?php echo zfunc_comments_users($postid); ?>

参数说明:$postid 是需要获取评论人数的文章ID

一般用法:在一般主题的loop里面可以这样用:

1

<?php echo zfunc_comments_users($post->ID); ?>

PS:还可以输出评论总数,用法:

1

<?php echo zfunc_comments_users($postid, 1); ?>

 

爱智习www.aizhixi.cn资源分享平台
爱智习资源网 » WordPress 获取文章的评论人数