获取特定自定义分类中帖子的评论总数

时间:2011-09-22 作者:Mestika

我很难从帖子中获得评论总数within 特定的自定义分类法。

设置如下:我为我的帖子创建了一个自定义分类法,称为“功能”。在这个分类法中,我喜欢四到五个术语。然后,我的一些帖子被放在专题1、专题2等中。

我可以做到这一点,在进行查询时,我还可以检索每个学期的帖子数量。但接下来我想显示每个功能术语中所有帖子的评论总数。例如,在专题词汇1下,帖子总数为12条,评论总数为34条。

我已尝试此查询:
SELECT SUM(comment_count) AS totalcc FROM wp_posts, wp_term_relationships WHERE wp_term_relationships.term_taxonomy_id = {$term->term_id} AND object_id = ID<但是它给了我一个不正确的答案。我不能很好地了解我失败的地方。

也许有一种更简单的方法可以做到这一点,Wordpress提供了一种方法,但如果是这样的话,我还无法找到它。

如有任何帮助或建议,将不胜感激。

真诚的梅斯蒂卡

1 个回复
SO网友:Chip Bennett

您需要循环浏览您的帖子,使用get_comments_number() 获取每个帖子的评论数,然后将评论总数累积到一个单独的变量中。e、 g.:

<?php
$features_comment_count = 0;

if ( have_posts() ) : while ( have_posts() ) : the_post();

$features_comment_count += get_comments_number();

endwhile; endif;
?>
(我假设您知道如何自定义查询您的帖子,并且可以根据需要修改上述代码。)

如果您想在输出帖子内容之前对评论进行计数,只需运行上述循环,然后使用rewind_posts():

<?php rewind_posts(); ?>
然后,您可以按照正常方式输出POST循环。

结束

相关推荐

如何修改此wpdb查询以包括POST_STATUS为PUBLISH和DRAFT的帖子?

我使用下面的函数来计算作者从自定义帖子类型中发表的帖子数量。<?php function count_user_posts_by_type($userid, $post_type) { global $wpdb; $where = get_posts_by_author_sql($post_type, TRUE, $userid); $count = $wpdb->get_var( \"SELECT COUNT(*) FROM $wpdb