大家好,几天没见,想我了没?
这两天实在没东西折腾,只好在评论上继续凿,就随便写个吧,不要让香火断在今天..
本次代码实现的效果为分别统计主评论(楼层数)和子评论(回复数),没有废话了,上代码吧.
(再废话一句吧:我知道网上有教程是分开统计访客评论和博主评论的,和本文不是一回事)
效果:
以下代码添加到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评论计数准确多了.
separate-comment-count is coded by http://xiaohudie.net. Any posts here is one hundred percent original, so please keep my link so as not to hurt this pretty girl. -
好热闹~ 恩。。。我就吐槽一下“香火”这个词吧~
@Arch!tect : :mrgreen: 被你发现了
不分开就会显得评论多写。程序媛是生命不止,折腾不歇啊。
@ChoJemmy : 不折腾就没东西写咯 没办法 :sad:
圖!片!掛!了!禁!止!外!鏈!了!趕!緊!修!復!吧
好累…. :arrow:
@Android 没有啊 :arrow:
准备把我的原版主题改一下。。。
增加了查询量。。