From 1a01a9ab555df540ca5f274b81e7f239f3d213e9 Mon Sep 17 00:00:00 2001 From: Scott Taylor Date: Mon, 14 Sep 2015 22:24:26 +0000 Subject: [PATCH] In the `edit-comments.php` admin handler, toggle `wp_defer_comment_counting()` so that only unique post IDs have their comment count updated. Currently, if you delete 50 comments from the same post, the count would get reset 50 times. Not joking. See #33875. Built from https://develop.svn.wordpress.org/trunk@34132 git-svn-id: http://core.svn.wordpress.org/trunk@34100 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-admin/edit-comments.php | 4 ++++ wp-includes/version.php | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/wp-admin/edit-comments.php b/wp-admin/edit-comments.php index 48dd6a4cd2..329244d4a6 100644 --- a/wp-admin/edit-comments.php +++ b/wp-admin/edit-comments.php @@ -44,6 +44,8 @@ if ( $doaction ) { $redirect_to = remove_query_arg( array( 'trashed', 'untrashed', 'deleted', 'spammed', 'unspammed', 'approved', 'unapproved', 'ids' ), wp_get_referer() ); $redirect_to = add_query_arg( 'paged', $pagenum, $redirect_to ); + wp_defer_comment_counting( true ); + foreach ( $comment_ids as $comment_id ) { // Check the permissions on each if ( !current_user_can( 'edit_comment', $comment_id ) ) continue; @@ -80,6 +82,8 @@ if ( $doaction ) { } } + wp_defer_comment_counting( false ); + if ( $approved ) $redirect_to = add_query_arg( 'approved', $approved, $redirect_to ); if ( $unapproved ) diff --git a/wp-includes/version.php b/wp-includes/version.php index 3aae69f693..8013f79c6d 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -4,7 +4,7 @@ * * @global string $wp_version */ -$wp_version = '4.4-alpha-34131'; +$wp_version = '4.4-alpha-34132'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.