Maison  >  Article  >  php教程  >  wordpress分开统计主评论和子评论

wordpress分开统计主评论和子评论

WBOY
WBOYoriginal
2016-06-06 20:08:351016parcourir

大家好,几天没见,想我了没? 这两天实在没东西折腾,只好在评论上继续凿,就随便写个吧,不要让香火断在今天.. 本次代码实现的效果为分别统计主评论(楼层数)和子评论(回复数),没有废话了,上代码吧. 效果: 以下代码添加到functions.php function separate_comment

大家好,几天没见,想我了没?
这两天实在没东西折腾,只好在评论上继续凿,就随便写个吧,不要让香火断在今天..
本次代码实现的效果为分别统计主评论(楼层数)和子评论(回复数),没有废话了,上代码吧.
效果:

分开统计主评论和子评论

以下代码添加到functions.php
function separate_comment_count($id){
global $wpdb;
$outputn = "SELECT COUNT(comment_post_id) AS count FROM $wpdb->comments WHERE comment_approved = '1' AND comment_post_ID = $id AND comment_parent = '0'";
$parents = $wpdb->get_row($outputn);
return $parents->count;
}

下面这段代码放在原本展示评论数的代码后面,

<?php $parents_count = separate_comment_count($post->ID);
$children_count = $post->comment_count - $parents_count;
echo ":堆了".$parents_count."层楼+";//如果想正常点,就换成echo "主评论:".$parents_count;
echo "有".$children_count."个推楼的";//如果想正常点,就换成echo "子评论:".$children_count;
?>

答疑:

-这代码还能耍出别的花样吗?

-有些同志在展示评论数时,会用到这样的函数<?php comments_popup_link( __( '抢沙发', 'xiaohudie' ) , __( '板凳还在', 'xiaohudie' ), __( '%条评论 ', 'xiaohudie' )); ?>(或者是<?php comments_number('抢沙发','抢板凳','%');?>),这些个函数作用就是将评论数转化,0→抢沙发,1→板凳还在.但是如果只有一个人评论,并且得到了回复,由于回复的评论也计算在总评论里,那其实板凳还在,但评论数里却不会再显示板凳还在了...这让后面准备抢板凳的人情何以堪?
所以我们可以通过将主评论和子评论分开计数,以实现准确的定位板凳和地板的状态(好吧,我知道我很无聊),我们可以根据上面介绍的代码来判断,如果$parents_count为1,则输出:板凳还在,为2则输出地板还在,这样比原生的wordpress评论计数准确多了.

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn