web-dev-qa-db-ja.com

特定のカスタム分類の投稿からコメントの総数を取得する

投稿からコメントの総数を取得しようとするといくつかの問題が発生しますwithin特定のカスタム分類。

セットアップは次のとおりです。「機能」と呼ばれる、投稿用のカスタム分類を作成しました。その分類法の中で、私は4つまたは5つの用語が好きです。次に、私の投稿の一部が機能期間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が提供するより簡単な方法があるかもしれませんが、もしそうなら私はそれを見つけることができませんでした。

ヘルプや提案をいただければ幸いです。

誠実
-メスティカ

4
Mestika

投稿をループし、 get_comments_number() を使用して各投稿のコメント数を取得してから、コメントの総数を別々の変数に累積する必要があります。例えば。:

<?php
$features_comment_count = 0;

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

$features_comment_count += get_comments_number();

endwhile; endif;
?>

(私はあなたがあなたの投稿をカスタムクエリする方法を知っていると思います、そして必要に応じて上記のコードを適応させることができます。)

投稿の内容を出力するコメントbeforeを数えたい場合は、単に上記のループを実行してから、 rewind_posts() を使用して投稿を巻き戻します。

<?php rewind_posts(); ?>

その後、あなたはあなたの投稿ループを通常通りに出力することができます。

1
Chip Bennett