Как отключить автоматическую отправку системных писем WordPress

WordPress по умолчанию отправляет множество системных писем: уведомления о новых комментариях, оповещения о смене пароля, письма с подтверждением регистрации и др. Иногда это нежелательно — например, если вы используете внешнюю CRM, собственную систему уведомлений или хотите избежать спама для пользователей. В этой статье подробно разберём, как отключить автоматическую отправку системных писем в WordPress, какие функции и хуки для этого применять, а также рассмотрим примеры кода и полезные плагины.

Основные типы системных писем в WordPress и причины их отключения

WordPress отправляет системные письма в нескольких случаях:

  • Письма для восстановления пароля (reset password)
  • Уведомления о новых комментариях и ответах
  • Сообщения о регистрации пользователя и смене роли
  • Уведомления администраторам о новых регистрациях
  • Письма, связанные с WooCommerce (если установлен)

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

Отключение писем восстановления пароля и регистрации с помощью хуков WordPress

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

Отключение письма восстановления пароля

WordPress отправляет письмо восстановления пароля через функцию wp_mail() из хука retrieve_password. Чтобы отключить это письмо, используем фильтр send_password_change_email и возвращаем false:

function wpfront_disable_password_reset_email( $send, $user, $userdata ) {
    return false; // Отключаем письмо
}
add_filter( 'send_password_change_email', 'wpfront_disable_password_reset_email', 10, 3 );

Этот код отключит отправку письма при смене пароля.

Отключение уведомлений о регистрации пользователей

Чтобы полностью отключить письма, которые отправляются при регистрации пользователей, можно воспользоваться фильтром wp_new_user_notification_email и вернуть пустой массив:

function wpfront_disable_new_user_notification( $wp_new_user_notification_email, $user, $blogname ) {
    return [];
}
add_filter( 'wp_new_user_notification_email', 'wpfront_disable_new_user_notification', 10, 3 );

Этот метод подходит для WordPress версии 5.9 и выше.

Отключение писем о новых комментариях

По умолчанию WordPress отправляет письма администраторам при появлении новых комментариев. Чтобы отключить эти письма, можно использовать фильтр notify_post_author и отключить уведомления администратору через comment_notification_recipients:

function wpfront_disable_comment_notifications( $notify, $comment_id ) {
    return false; // Отключаем уведомления для автора записи
}
add_filter( 'notify_post_author', 'wpfront_disable_comment_notifications', 10, 2 );

function wpfront_disable_admin_comment_notifications( $emails, $comment_id ) {
    return [];
}
add_filter( 'comment_notification_recipients', 'wpfront_disable_admin_comment_notifications', 10, 2 );

Так вы отключите все системные уведомления по комментариям.

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

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

  • Clearfy Pro — в нем есть модуль для отключения системных писем, управление уведомлениями и оптимизация отправки.
  • My Popup — позволяет создавать собственные всплывающие окна и уведомления, заменяя стандартные письма.
  • WP Mail Logging — полезен для отладки, чтобы видеть, какие письма отправляются и при необходимости блокировать их.

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

Практическое решение для отключения всех исходящих писем WordPress

Если нужно временно или полностью отключить все письма, можно использовать глобальный фильтр wp_mail:

function wpfront_disable_all_emails( $args ) {
    // Возвращаем false, чтобы остановить отправку
    return false;
}
add_filter( 'wp_mail', 'wpfront_disable_all_emails' );

Но такой подход не всегда удобен, так как полностью блокирует всю почту, включая важные уведомления. Лучше применять выборочные отключения, описанные выше.

Резюме и рекомендации

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

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

WooCommerce: как автоматически изменять ставку НДС при продаже товаров
01.06.2026
Как автоматически отключить XML-RPC в WordPress для повышения безопасности
06.04.2026
WooCommerce: как автоматически изменять ставку НДС при продаже товаров
07.07.2026
WooCommerce: автоматическое отключение вариантов доставки при отсутствии товаров на складе
11.05.2026
Как использовать REST API в WordPress для создания собственных настроек
25.11.2025