Как удалить все комментарии из WordPress одним кодом

Зачем удалять все комментарии в WordPress

Иногда возникает необходимость очистить сайт от всех комментариев. Это может быть связано с миграцией, сменой концепции блога, или если комментарии стали источником спама и нежелательного контента. Удаление всех комментариев вручную — процесс долгий и неудобный, особенно на крупных сайтах с тысячами записей.

В этой статье я расскажу, как быстро и безболезненно удалить все комментарии из WordPress с помощью одного куска кода. Это поможет вам сэкономить время и избежать ошибок при работе с базой данных.

Удаление всех комментариев через WPGuest-функцию на PHP

Для начала рассмотрим вариант с использованием пользовательской функции на PHP, которую можно выполнить через файл темы или плагин. Вот пример функции, которая удаляет все комментарии из базы данных:

function wpguest_delete_all_comments() {
    global $wpdb;
    $comments_table = $wpdb->comments;
    $comments_meta_table = $wpdb->commentmeta;

    // Удаляем все метаданные комментариев
    $wpdb->query( "DELETE FROM $comments_meta_table" );

    // Удаляем все комментарии
    $wpdb->query( "DELETE FROM $comments_table" );

    // Обновляем счетчики комментариев в постах
    $wpdb->query( "UPDATE $wpdb->posts SET comment_count = 0" );
}

// Запуск функции
wpguest_delete_all_comments();

Эта функция напрямую работает с базой данных, удаляя записи из таблиц комментариев и их метаданных, а также сбрасывая счетчики комментариев у всех записей. Вызовите эту функцию один раз — и все комментарии пропадут.

Важное предупреждение: перед запуском любой операции с базой данных обязательно создайте резервную копию. После удаления восстановить комментарии будет невозможно без бэкапа.

Как и где запускать этот код

Для запуска функции можно временно добавить ее в файл functions.php вашей активной темы, либо создать небольшой плагин. Вариант с плагином предпочтительнее, так как не зависит от темы и проще отключается.

Пример минимального плагина для удаления всех комментариев:

<?php
/*
Plugin Name: WPGuest Delete All Comments
Description: Удаляет все комментарии из базы данных WordPress.
Version: 1.0
Author: WPGuest
*/

function wpguest_delete_all_comments_plugin() {
    global $wpdb;
    $comments_table = $wpdb->comments;
    $comments_meta_table = $wpdb->commentmeta;

    $wpdb->query( "DELETE FROM $comments_meta_table" );
    $wpdb->query( "DELETE FROM $comments_table" );
    $wpdb->query( "UPDATE $wpdb->posts SET comment_count = 0" );
}

register_activation_hook( __FILE__, 'wpguest_delete_all_comments_plugin' );

После активации плагина все комментарии будут удалены, затем плагин можно деактивировать и удалить.

Удаление всех комментариев через WP-CLI

Если у вас есть доступ к серверу и установлен WP-CLI, самый простой способ удалить все комментарии — использовать команду:

wp comment delete $(wp comment list --format=ids) --force

Разберём по частям:

  • wp comment list --format=ids — выводит список ID всех комментариев
  • wp comment delete <ids> --force — удаляет комментарии по ID без подтверждения

Этот способ безопасный и удобный, особенно при большом количестве комментариев. Кроме того, WP-CLI автоматически обновит счетчики комментариев и очистит связанные данные.

Преимущества WP-CLI

WP-CLI позволяет выполнять множество операций с WordPress напрямую из консоли, что экономит время и снижает риск ошибок. При работе с комментариями это самый быстрый и надежный метод.

Если WP-CLI не установлен, обратитесь к хостеру или настройте его самостоятельно — это полезный инструмент для любого разработчика.

Рассмотрим полезные плагины для управления комментариями

Если вы хотите не просто удалить все комментарии, а управлять ими комплексно, есть несколько полезных плагинов:

  • Delete All Comments of WordPress: простой плагин для удаления всех комментариев и метаданных одним кликом без лишних настроек.
  • WP Bulk Delete: мощный инструмент, который позволяет массово удалять комментарии по различным критериям — например, по дате, статусу, автору.
  • Disable Comments: плагин для полного отключения комментариев на сайте, если вы хотите навсегда отказаться от этой функции.

Все эти плагины можно найти в официальном репозитории WordPress и установить через админ-панель.

Когда использовать плагины, а когда код

Если вам нужна однократная операция удаления всех комментариев, проще использовать код или WP-CLI. Для регулярного управления, фильтрации и массового удаления удобнее плагины.

Комбинируйте подходы, чтобы добиться максимального результата и безопасности.

Резюме по удалению комментариев в WordPress

Удаление всех комментариев может понадобиться по разным причинам, и сделать это можно несколькими способами. Вариант с кодом дает полный контроль и подходит для разработчиков, WP-CLI — быстрый и надежный инструмент для серверной работы, а плагины обеспечивают удобство и гибкость для администраторов без навыков программирования.

Всегда делайте резервные копии и тщательно проверяйте действия, чтобы не потерять важную информацию.

Как автоматизировать удаление старого контента WooCommerce по дате
13.06.2026
Как автоматизировать удаление старого контента WooCommerce по дате
20.05.2026
Как автоматизировать удаление старых записей WordPress по дате
01.03.2026
Как избежать 404 ошибок при изменении URL в WordPress
27.06.2026
Как удалить все комментарии из WordPress одним кодом
21.11.2025