Как исправить проблему неотправки писем из WooCommerce через SMTP

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

Одной из частых проблем WooCommerce является ситуация, когда магазин не отправляет уведомления клиентам и администрации по электронной почте, хотя настройки SMTP, казалось бы, корректны. Проблема может проявляться в виде отсутствия писем при оформлении заказа, сбросе пароля или смене статуса заказа.

Основные признаки проблемы:

  • Нет писем в папке "Отправленные" на почтовом сервере.
  • В WooCommerce в статусах заказов нет ошибок, но письма не приходят.
  • В логах сервера нет явных ошибок PHP, но письма не доставляются.

Основные причины проблемы

  • Неправильная конфигурация SMTP (сервер, порт, шифрование).
  • Блокировка отправки писем хостингом или сервером (firewall, ограничение PHP).
  • Использование стандартной функции wp_mail() без явной настройки SMTP.
  • Ошибки в плагинах для SMTP или конфликт с WooCommerce.
  • Отсутствие или некорректная аутентификация SMTP.

Пошаговое решение: настройка SMTP для WooCommerce с плагином WP Mail SMTP

Использование проверенного SMTP-плагина — самый надежный способ. Рассмотрим настройку на примере WP Mail SMTP.

Шаг 1. Установка и активация плагина WP Mail SMTP

Перейдите в админку WordPress → Плагины → Добавить новый, введите в поиск "WP Mail SMTP", установите и активируйте.

Шаг 2. Настройка SMTP-сервера

Перейдите в WP Mail SMTP → Настройки:

  • Mailer: выберите "Other SMTP".
  • SMTP Host: например, smtp.gmail.com (для Gmail).
  • SMTP Port: 465 (SSL) или 587 (TLS).
  • Encryption: SSL или TLS по соответствующему порту.
  • Authentication: включено.
  • SMTP Username и Password: данные от вашего почтового аккаунта.
  • From Email: адрес, с которого будут отправляться письма (желательно совпадающий с SMTP Username).
  • From Name: имя отправителя (например, название магазина).

Шаг 3. Дополнительные настройки

  • Включите журналирование писем (Debug Log) в WP Mail SMTP, чтобы видеть ошибки при отправке.
  • Сохраните настройки.

Шаг 4. Тестовая отправка письма

В разделе «Тестовое письмо» введите свой email и отправьте тестовое сообщение. Если письмо не пришло, проверьте логи и настройки SMTP.

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

1. Оформите тестовый заказ в WooCommerce, проверьте получение письма с подтверждением.

2. Посмотрите логи WP Mail SMTP (WP Mail SMTP → Инструменты → Логи) на предмет ошибок.

3. Проверьте папку "Отправленные" на почтовом сервере, чтобы убедиться в успешной отправке.

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

  • Ошибка аутентификации SMTP: Проверьте правильность логина и пароля. Для Gmail убедитесь, что включен Доступ для менее безопасных приложений или используйте OAuth.
  • Письма попадают в спам: Настройте SPF, DKIM и DMARC для домена, с которого отправляете письма.
  • PHP-функция mail() отключена на сервере: SMTP обязательна, так как стандартная отправка писем не работает.
  • Проблемы с портами: Убедитесь, что хостинг не блокирует порты 465 и 587.

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

  • Используйте отдельный почтовый аккаунт для отправки писем магазина, чтобы не смешивать личную почту и системные уведомления.
  • Регулярно обновляйте плагин WP Mail SMTP и WooCommerce для безопасности.
  • При большой нагрузке на магазин используйте специализированные SMTP-сервисы (SendGrid, Mailgun) с API-интеграцией для надежности.
  • Отключите избыточные плагины, которые могут конфликтовать с отправкой писем.

Пример кода для отправки письма через wp_mail с указанием From

add_filter('wp_mail_from', function() {
    return 'noreply@yourdomain.com';
});
add_filter('wp_mail_from_name', function() {
    return 'Ваш Магазин';
});

$to = 'customer@example.com';
$subject = 'Ваш заказ принят';
$message = 'Спасибо за заказ! Мы его обрабатываем.';
$headers = ['Content-Type: text/html; charset=UTF-8'];

wp_mail($to, $subject, $message, $headers);

Чек-лист для проверки работы отправки писем WooCommerce через SMTP

  • Настроен и активирован плагин WP Mail SMTP.
  • Правильно введены SMTP сервер, порт и шифрование.
  • Указан корректный логин и пароль SMTP.
  • Включено логирование ошибок в WP Mail SMTP.
  • Проведена тестовая отправка письма.
  • Письма приходят на почту и не попадают в спам.
  • Проведена проверка SPF, DKIM и DMARC для домена.
  • Проверены логи WooCommerce и сервера на ошибки.
Как установить и настроить выравнивание изображений в WordPress правильно
13.11.2025
Как исправить дублирование SKU в WooCommerce: диагностика и решение
13.05.2026
Как использовать WooCommerce хуки для автоматизации обработки возвратов
31.05.2026
Как настроить автоматическое удаление старого файлового кеша в WordPress
04.04.2026
Как автоматизировать раскрытие и закрытие блоков в WordPress с помощью JavaScript и PHP
02.03.2026