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

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

Почему важно автоматически удалять спам-комментарии

Удаление спама вручную — занятие утомительное и неэффективное. Со временем спам-комментариев становится так много, что стандартные средства администрирования не справляются с нагрузкой. Автоматизация этого процесса помогает:

  • Сохранять базу данных чистой и оптимизированной.
  • Уменьшать нагрузку на сервер.
  • Улучшать скорость работы сайта.
  • Повышать качество взаимодействия с посетителями.

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

Использование плагинов для автоматического удаления спама

1. Akismet Anti-Spam

Akismet — самый популярный плагин для борьбы со спамом в комментариях. Он автоматически помечает подозрительные комментарии как спам, а администратор может настроить удаление таких комментариев через определённое время.

Для настройки автоматического удаления спама в Akismet зайдите в Настройки > Akismet и активируйте функцию удаления спам-комментариев старше определённого количества дней.

2. WP Spam Cleaner

Этот плагин позволяет массово удалять спам-комментарии и очистить базу данных. Можно настроить автоматическое удаление спама через WP-Cron.

Для автоматизации добавьте в планировщик WordPress задачу, которая будет запускать очистку, например, раз в неделю.

3. Clearfy Pro (из коробки с wpbook)

Плагин Clearfy Pro содержит функцию автоматического удаления спама из комментариев и других разделов. Он оптимизирует базу и уменьшает количество мусора.

Подробности и скачивание: Clearfy Pro на WPSHOP

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

Если вы хотите более тонко контролировать процесс удаления, можно создать собственный плагин или добавить код в functions.php вашей темы.

Пример кода для удаления спам-комментариев старше 7 дней

function wpbook_delete_old_spam_comments() {
    global $wpdb;
    $days = 7;
    $date_limit = date('Y-m-d H:i:s', strtotime('-' . $days . ' days'));

    $comments = $wpdb->get_col($wpdb->prepare(
        "SELECT comment_ID FROM $wpdb->comments WHERE comment_approved = 'spam' AND comment_date < %s",
        $date_limit
    ));

    if (!empty($comments)) {
        foreach ($comments as $comment_id) {
            wpbook_delete_spam_comment_by_id($comment_id);
        }
    }
}

function wpbook_delete_spam_comment_by_id($comment_id) {
    wp_delete_comment($comment_id, true); // true — удаление без возможности восстановления
}

// Добавляем задачу в WP-Cron для ежедневного запуска
if (!wp_next_scheduled('wpbook_daily_spam_cleanup')) {
    wp_schedule_event(time(), 'daily', 'wpbook_daily_spam_cleanup');
}
add_action('wpbook_daily_spam_cleanup', 'wpbook_delete_old_spam_comments');

Этот код удаляет все комментарии со статусом spam, которые старше 7 дней, автоматически каждый день.

Дополнительные методы борьбы со спамом

Использование скрытых полей honeypot

Техника honeypot добавляет в форму скрытое поле, которое видят только боты. Если поле заполнено — комментарий сразу помечается как спам. Это снижает количество мусорных комментариев без CAPTCHA.

Ограничение частоты отправки комментариев

Можно запретить пользователям отправлять комментарии чаще, чем раз в определённое время. Это уменьшит автоматические массовые рассылки спама.

Применение плагинов с антиспам функционалом

Плагины, например, WP-Cerber или Anti-Spam Bee, дополнительно фильтруют подозрительные комментарии и могут помочь в борьбе со спамом.

Оптимизация базы данных после удаления спама

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

Плагин Clearfy Pro позволяет сделать это нажатием одной кнопки. Также можно выполнить SQL-запрос:

OPTIMIZE TABLE wp_comments;

Для автоматизации можно добавить этот запрос в скрипт очистки.

Выводы и рекомендации

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

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как автоматически отключать плагины в WordPress по расписанию
12.03.2026
Как удалить неиспользуемые шорткоды в WordPress: эффективные методы и примеры кода
18.02.2026
Как автоматически удалять неактивных пользователей WordPress
16.04.2026
Как создать автоматический импорт данных из Excel в WordPress
05.03.2026
Как добавить мультиязычность в WooCommerce без плагинов
26.04.2026
×

AI-плагин

WPGPT
Сам создает статьи для вашего сайта WordPress

SEO и мета-теги

Парсинг конкурентов

Изображения

Комментарии

Подробнее