Решение проблемы неотправки писем из WordPress через SMTP

|

Диагностика проблемы с отправкой писем через SMTP в WordPress

Если WordPress не отправляет письма, это часто связано с неправильной конфигурацией SMTP или конфликтами на уровне сервера. Для начала проверьте следующие моменты:

Проверка отправки писем через WP Mail SMTP

Рекомендуется использовать плагин WP Mail SMTP для отладки. После установки и настройки плагина можно отправить тестовое письмо из настроек и увидеть результат с логами.

Пошаговое решение проблемы неотправки писем через SMTP

  1. Установите и активируйте плагин WP Mail SMTP через репозиторий WordPress.
  2. Настройте SMTP: Введите SMTP-сервер (например, smtp.yourdomain.com), порт (обычно 465 для SSL или 587 для TLS), аутентификацию (логин и пароль). Установите протокол безопасности (SSL или TLS).
  3. Задайте корректный email отправителя, который совпадает с доменом сайта, чтобы избежать блокировок.
  4. Включите ведение логов в настройках плагина для диагностики ошибок.
  5. Отправьте тестовое письмо из панели плагина и проверьте успешность отправки и наличие ошибок.
  6. Если письмо не отправляется, проверьте настройки хостинга — часто провайдеры блокируют SMTP-порты или требуют использования их сервера.
  7. Попробуйте альтернативный SMTP-сервер или сервис, например, Gmail SMTP или сторонние сервисы (SendGrid, Mailgun).
  8. Проверьте, не конфликтует ли wp_mail() с другими плагинами, временно отключив их и протестировав отправку.

Пример базовой настройки SMTP через код в functions.php

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

add_action('phpmailer_init', function($phpmailer) {
    $phpmailer->isSMTP();
    $phpmailer->Host       = 'smtp.yourdomain.com';
    $phpmailer->SMTPAuth   = true;
    $phpmailer->Port       = 587;
    $phpmailer->Username   = 'your-email@yourdomain.com';
    $phpmailer->Password   = 'your-password';
    $phpmailer->SMTPSecure = 'tls'; // 'ssl' или 'tls'
    $phpmailer->From       = 'your-email@yourdomain.com';
    $phpmailer->FromName   = 'Your Site Name';
});

Проверка результата после внедрения решения

Для проверки выполните следующие действия:

wp_mail('youremail@example.com', 'Тест SMTP', 'Проверка отправки писем');

Если письмо не приходит и ошибок нет, вероятно, проблема на стороне хостинга или в спам-фильтрах.

Частые ошибки и их исправление

Практические советы по безопасности и производительности SMTP в WordPress

Сравнение вариантов настройки SMTP в WordPress

МетодПреимуществаНедостатки
Плагин WP Mail SMTPПростота настройки, поддержка популярных сервисов, ведение логовДополнительный плагин, возможны конфликты
Ручная настройка через phpmailer_initМинимум зависимостей, полный контрольТребует навыков, нет GUI для тестов
Использование хостингового SMTPВысокая совместимость с серверомМожет быть ограничен хостингом, менее гибко
Как отключить автоматические обновления в WordPress: практическое руководство
16.02.2026
Автоматическое удаление старого кода в WordPress с использованием хуков и WP-Cron
09.03.2026
Автоматический сбор логов и анализ безопасности WordPress
04.01.2026
Как автоматизировать удаление неиспользуемых taxonomy termов в WordPress
02.04.2026
Как решить проблему нерабочих скриптов в WordPress после обновления
20.04.2026
×
-15%
на премиум плагин
My Popup

Повысьте конверсию!

Получить скидку »