私は各投稿のライブコメントの数を数えようとしています。私はhttp://example.com/count.php
のようなカスタムページでそれらを抽出して、それらをこのように出力させたいです:
http://example.com/the-post-url-with-3-comments/ 3
http://example.com/the-post-url-with-no-comments/ 0
http://example.com/the-post-url-with-12-comments/ 12
すべての投稿間の間隔はそれほど重要ではありません。すべての投稿と承認されたコメントの数を含む2つの列が必要です。
私はこれを この投稿 とecho get_comment_count( 149 );
を使って行うことに近づいていますが、それは一度に1つの投稿しか使いません。すべての投稿を抽出したいのですが。
ご協力いただきありがとうございます。
これはとても簡単です。このコードをfunctions.phpファイルに入れてください。
論理は非常に簡単です。
get_posts()
で取得してください。。
add_action( 'init', 'get_comments_count' ); // Hook to init, elsewhere or use directly in your code
function get_comments_count() {
$all_posts = get_posts( array( 'numberposts' => -1 ) );
foreach( $all_posts as $current_post ){
$comments_count = get_comment_count( $current_post->ID );
$permalink = get_permalink( $current_post->ID );
printf( '<a href="%s">%s</a> - %s<br>', $permalink, $permalink, $comments_count['total_comments'] );
}
}
以下のコードを試してください。ポストループで各投稿のコメント数を表示します。コメントへのリンクもあります。
<a href="<?php comments_link(); ?>"><?php comments_number('0 Comment', '1 Comment', '% Comments'); ?>
</a>