Обновление количества комментариев в WordPress

Если Вы добавили новый тип комментария у себя в WordPress, но не хотите чтобы они отображались в общем списке комментариев и также чтобы не учитывались в количестве комментариев, то делаем следующее:

1. Для исключения кастомных комментариев из общего списка:

В функции wp_list_comments (функция обычно лежит в файле comments.php вашей темы) добавляем аргумент type.

wp_list_comments(array('type' => 'comment'));

2. Для исключения кастомных комментариев из числа комментариев поста (comment_count):

Добавляем в файл functions.php следующий код:

add_action('wp_update_comment_count', 'sniff_update_comment_count');
function sniff_update_comment_count($post_id) {
global $wpdb;
$post_id = (int)$post_id;
if ( !$post_id )
return false;
if ( !$post = get_post($post_id) )
return false;

$new = (int) $wpdb->get_var( $wpdb->prepare("SELECT COUNT(*)
FROM $wpdb->comments
WHERE comment_post_ID = %d AND comment_approved = '1' AND comment_type != 'community_review' ", $post_id) );
$wpdb->update( $wpdb->posts, array('comment_count' => $new), array('ID' => $post_id) );

clean_post_cache( $post );
}

в comment_type != ‘community_review’ (строка 12) заменяем community_review на ваш тип комментариев, который Вы хотите исключить.

Вроде все.

Подписаться
Уведомить о
0 Comments
Популярные
Новые Старые
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x