bbp_admin_repair_forum_reply_count()
Recount forum replies
Description
Return
(array) An array of the status code and the message
Source
File: bp-forums/admin/tools.php
function bbp_admin_repair_forum_reply_count() { global $wpdb; $statement = __( 'Counting the number of replies in each forum… %s', 'buddyboss' ); $result = __( 'Failed!', 'buddyboss' ); // Post type $fpt = bbp_get_forum_post_type(); // Delete the meta keys _bbp_reply_count and _bbp_total_reply_count for each forum $sql_delete = "DELETE `postmeta` FROM `{$wpdb->postmeta}` AS `postmeta` LEFT JOIN `{$wpdb->posts}` AS `posts` ON `posts`.`ID` = `postmeta`.`post_id` WHERE `posts`.`post_type` = '{$fpt}' AND `postmeta`.`meta_key` = '_bbp_reply_count' OR `postmeta`.`meta_key` = '_bbp_total_reply_count'"; if ( is_wp_error( $wpdb->query( $sql_delete ) ) ) { return array( 1, sprintf( $statement, $result ) ); } // Recalculate the metas key _bbp_reply_count and _bbp_total_reply_count for each forum $forums = get_posts( array( 'post_type' => bbp_get_forum_post_type(), 'numberposts' => -1 ) ); if ( !empty( $forums ) ) { foreach ( $forums as $forum ) { bbp_update_forum_reply_count( $forum->ID ); } } else { return array( 2, sprintf( $statement, $result ) ); } return array( 0, sprintf( $statement, __( 'Complete!', 'buddyboss' ) ) ); }
Changelog
Version | Description |
---|---|
bbPress (r2613) | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.