wp_count_comments [ WordPress Function ]
| Parameters: |
|
| Returns: |
|
| Defined at: |
|
Retrieve total comments for blog or single post.
The properties of the returned object contain the 'moderated', 'approved', and spam comments for either the entire blog or single post. Those properties contain the amount of comments that match the status. The 'total_comments' property contains the integer of total comments.
The comment stats are cached and then retrieved, if they already exist in the cache.
Source
<?php
function wp_count_comments( $post_id = 0 ) {
global $wpdb;
$post_id = (int) $post_id;
$stats = apply_filters('wp_count_comments', array(), $post_id);
if ( !empty($stats) )
return $stats;
$count = wp_cache_get("comments-{$post_id}", 'counts');
if ( false !== $count )
return $count;
$where = '';
if ( $post_id > 0 )
$where = $wpdb->prepare( "WHERE comment_post_ID = %d", $post_id );
$count = $wpdb->get_results( "SELECT comment_approved, COUNT( * ) AS num_comments FROM {$wpdb->comments} {$where} GROUP BY comment_approved", ARRAY_A );
$total = 0;
$approved = array('0' => 'moderated', '1' => 'approved', 'spam' => 'spam', 'trash' => 'trash', 'post-trashed' => 'post-trashed');
foreach ( (array) $count as $row ) {
// Don't count post-trashed toward totals
if ( 'post-trashed' != $row['comment_approved'] && 'trash' != $row['comment_approved'] )
$total += $row['num_comments'];
if ( isset( $approved[$row['comment_approved']] ) )
$stats[$approved[$row['comment_approved']]] = $row['num_comments'];
}
$stats['total_comments'] = $total;
foreach ( $approved as $key ) {
if ( empty($stats[$key]) )
$stats[$key] = 0;
}
$stats = (object) $stats;
wp_cache_set("comments-{$post_id}", $stats, 'counts');
return $stats;
}
?>
Examples [ wp-snippets.com ]
Top Google zoekresultaten
- Function Reference/wp count comments « WordPress Codex
Description. Retrieve a total comment count for a site or post. Usage. <?php wp_count_comments( post_id ); ?> Parameters. $post_id: (integer) (optional) The ...
codex.wordpress.org - #16879 (bug in function wp_count_comments in wp-includes ...
This seems to have been around for a while and keeps being ignored, or rather pushed back, by Mark Jaquith, with phony arguments. Please re-consider just ...
core.trac.wordpress.org - wp_count_comments Wordpress hook details -- Adam Brown, BYU ...
Detailed information about every action hook and filter used in WordPress. Makes Plugin API easier to use. Lists appearance, file location, and deprecation data ...
adambrown.info - wp_count_posts, wp_count_terms and wp_count_comments for ...
May 12, 2012 ... Is there a way for the functions wp_count_posts , wp_count_terms and wp_count_comments to return their results only for a specific user, ...
wordpress.stackexchange.com