mirror of
git://develop.git.wordpress.org/
synced 2025-01-17 21:08:44 +01:00
Cache comment count and use count API in menu.php
git-svn-id: https://develop.svn.wordpress.org/branches/2.5@7715 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
ed09c78f77
commit
80af1aa22e
@ -20,7 +20,8 @@ elseif (strpos($_SERVER['REQUEST_URI'], 'link-add.php') !== false)
|
||||
else
|
||||
$menu[10] = array(__('Manage'), 'edit_posts', 'edit.php');
|
||||
|
||||
$awaiting_mod = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->comments WHERE comment_approved = '0'");
|
||||
$awaiting_mod = wp_count_comments();
|
||||
$awaiting_mod = $awaiting_mod->moderated;
|
||||
$menu[15] = array(__('Design'), 'switch_themes', 'themes.php');
|
||||
$menu[20] = array( sprintf( __('Comments %s'), "<span id='awaiting-mod' class='count-$awaiting_mod'><span class='comment-count'>$awaiting_mod</span></span>" ), 'edit_posts', 'edit-comments.php');
|
||||
$menu[30] = array(__('Settings'), 'manage_options', 'options-general.php');
|
||||
|
@ -451,6 +451,11 @@ function wp_blacklist_check($author, $email, $url, $comment, $user_ip, $user_age
|
||||
function wp_count_comments() {
|
||||
global $wpdb;
|
||||
|
||||
$count = wp_cache_get('comments', 'counts');
|
||||
|
||||
if ( false !== $count )
|
||||
return $count;
|
||||
|
||||
$count = $wpdb->get_results( "SELECT comment_approved, COUNT( * ) AS num_comments FROM {$wpdb->comments} GROUP BY comment_approved", ARRAY_A );
|
||||
|
||||
$stats = array( );
|
||||
@ -464,7 +469,10 @@ function wp_count_comments() {
|
||||
$stats[$key] = 0;
|
||||
}
|
||||
|
||||
return (object) $stats;
|
||||
$stats = (object) $stats;
|
||||
wp_cache_set('comments', $stats, 'counts');
|
||||
|
||||
return $stats;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user