WP Mail SMTP — один из самых популярных плагинов для настройки отправки почты в WordPress. Он помогает исправить проблему с отправкой писем, которая часто возникает из-за неправильных настроек сервера или конфликтов с хостингом. Однако иногда даже при использовании WP Mail SMTP возникают ошибки, которые мешают корректной работе почтовой системы сайта.
Почему возникает ошибка WP Mail SMTP в WordPress
Чаще всего проблемы с WP Mail SMTP связаны с неверной конфигурацией SMTP-сервера, неправильными учетными данными, ограничениями хостинга или конфликтами с другими плагинами. Вот основные причины сбоев:
- Неправильно указаны SMTP-хост, порт, тип шифрования;
- Неверно введены логин и пароль от почтового аккаунта;
- Хостинг блокирует исходящие SMTP-соединения;
- Конфликты с плагинами безопасности или кеширования;
- Отсутствие поддержки PHP-функции mail() или неправильные настройки PHP;
- Проблемы с SSL-сертификатами при использовании TLS/SSL.
Чтобы найти точную причину, полезно включить ведение логов в WP Mail SMTP и проверить сообщения об ошибках.
Как включить отладку WP Mail SMTP и получить подробные логи
В настройках плагина WP Mail SMTP есть опция «Enable Debug Logging». Включите ее, чтобы плагин записывал все попытки отправки писем и возникающие ошибки в файл wp-content/debug.log. Это поможет понять, на каком этапе происходит сбой.
Для включения отладки:
- Перейдите в «WP Mail SMTP» → «Settings» → «Debug»;
- Поставьте галочку «Enable Debug Logging»;
- Сохраните изменения и повторите попытку отправки письма;
- Посмотрите файл
wp-content/debug.logчерез FTP или файловый менеджер.
В логах вы увидите подробные сообщения об ошибках SMTP, например, о невозможности подключения к серверу, ошибках аутентификации или тайм-аутах.
Практическое решение ошибки на примере Gmail SMTP
Рассмотрим популярный кейс — настройку WP Mail SMTP с Gmail и самые распространённые проблемы.
Для начала создайте в Google аккаунте учетные данные OAuth 2.0 и подключите их в настройках WP Mail SMTP. Это позволит безопасно отправлять почту через Gmail без необходимости хранить пароль.
Если вы используете классическую SMTP-авторизацию, убедитесь, что в аккаунте Google включён доступ для небезопасных приложений (хотя Google постепенно отключает эту возможность).
Пример правильных настроек SMTP для Gmail:
SMTP Host: smtp.gmail.com
SMTP Port: 587
Encryption: TLS
SMTP Username: your-email@gmail.com
SMTP Password: your-app-password (если двухфакторная аутентификация включена)Если появляется ошибка аутентификации:
- Проверьте правильность логина и пароля;
- Сгенерируйте пароль приложения в аккаунте Google для WP Mail SMTP;
- Убедитесь, что двухфакторная аутентификация включена, иначе пароль приложения будет недоступен;
- Проверьте, не блокирует ли хостинг исходящие SMTP-соединения.
Код для отправки тестового письма с помощью WP Error Log и WP Mail SMTP
Для проверки работы SMTP можно использовать следующий код. Добавьте его в файл functions.php вашей темы или создайте отдельный плагин.
function wperror_send_test_email() {
$to = 'your-email@example.com';
$subject = 'Тестовое письмо WP Mail SMTP';
$message = 'Если вы получили это письмо, значит WP Mail SMTP работает корректно.';
$headers = array('Content-Type: text/html; charset=UTF-8');
$sent = wp_mail($to, $subject, $message, $headers);
if ( ! $sent ) {
error_log('WP Mail SMTP: ошибка при отправке тестового письма');
} else {
error_log('WP Mail SMTP: тестовое письмо успешно отправлено');
}
}
add_action('admin_init', 'wperror_send_test_email');После загрузки админки сработает функция отправки тестового письма, а в логах вы увидите результат попытки.
Другие полезные плагины для диагностики и улучшения работы почты в WordPress
Кроме WP Mail SMTP, есть несколько полезных инструментов, которые помогут решить проблемы с отправкой почты:
- Check & Log Email — плагин для логирования всех отправленных писем, полезен для отладки и контроля;
- Post SMTP Mailer/Email Log — альтернативный SMTP-плагин с расширенной отладкой и поддержкой OAuth;
- Clearfy Pro — оптимизатор WordPress, который может помочь устранить конфликты и улучшить производительность, влияющую на отправку почты;
- Expert Review — плагин для аудита сайта, включая проверки почтовой системы.
Как решить конфликт с другими плагинами и темами, мешающий работе WP Mail SMTP
Иногда WP Mail SMTP не работает из-за конфликтов с кеширующими плагинами, плагинами безопасности или даже темами. Чтобы выявить конфликт:
- Деактивируйте все плагины, кроме WP Mail SMTP;
- Переключитесь на стандартную тему (например, Twenty Twenty-One);
- Проверьте отправку почты;
- Понемногу включайте плагины обратно, проверяя работоспособность после каждого включения;
- Если вы нашли конфликтный плагин, обратитесь к его документации или поддержке для решения.
Обратите внимание, что некоторые плагины безопасности блокируют функции PHP, используемые для отправки писем.