WooCommerce: как избежать проблем с отправкой писем после покупки

Диагностика проблем с отправкой писем в WooCommerce

Когда WooCommerce перестаёт отправлять уведомления покупателям или администратору, первым делом нужно проверить следующие моменты:

  • Настройки email в WooCommerce (WooCommerce → Настройки → Email): активированы ли нужные уведомления;
  • Работоспособность почтового сервера хостинга — часто письма просто не уходят из-за блокировок;
  • Конфликты с плагинами безопасности или SMTP;
  • Ошибки в логах сервера или WooCommerce (включите логирование в настройках email);
  • Фильтры спама на стороне почтового клиента получателя.

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

1. Проверка и включение нужных email уведомлений

Перейдите в WooCommerce > Настройки > Email. Убедитесь, что уведомления типа "Новый заказ", "Заказ выполнен" и другие, которые важны, включены и адреса получателей указаны корректно.

2. Настройка SMTP для отправки почты

Большинство проблем с отправкой писем связано с тем, что сервер хостинга не настроен для корректной отправки почты. Для надежности рекомендую использовать SMTP плагин, например WP Mail SMTP. После установки:

  1. Выберите SMTP-сервер (например, Gmail, Яндекс, Mail.ru или ваш корпоративный SMTP);
  2. Настройте аутентификацию (логин, пароль);
  3. Протестируйте отправку через встроенный тест почты;
  4. Активируйте плагин.
add_action('phpmailer_init', function($phpmailer) {
    $phpmailer->isSMTP();
    $phpmailer->Host = 'smtp.example.com';
    $phpmailer->SMTPAuth = true;
    $phpmailer->Port = 587;
    $phpmailer->Username = 'user@example.com';
    $phpmailer->Password = 'password';
    $phpmailer->SMTPSecure = 'tls';
    $phpmailer->From = 'shop@example.com';
    $phpmailer->FromName = 'Магазин';
});

3. Проверка хуков WooCommerce для отправки писем

Иногда сторонние плагины или кастомный код мешают отправке писем. Проверьте, не отключены ли стандартные хуки WooCommerce:

remove_action('woocommerce_order_status_pending_to_processing_notification', 'woocommerce_send_customer_processing_order_notification');
remove_action('woocommerce_order_status_completed_notification', 'woocommerce_send_customer_completed_order_notification');

Если подобные удаления есть — закомментируйте их или удалите.

4. Логирование ошибок отправки

В WooCommerce можно включить запись логов в WooCommerce > Статус > Логи. Там будут сообщения об ошибках SMTP или других проблемах. Это поможет найти причину.

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

После настройки SMTP и проверки email уведомлений:

  • Создайте тестовый заказ с вашим email;
  • Проверьте, приходит ли уведомление о новом заказе и смене статуса;
  • Если письма не приходят, проверьте папку "Спам" и логи сервера;
  • Используйте плагин Email Log для отладки отправки писем.

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

  • Письма уходят в спам: Проверьте SPF, DKIM и DMARC записи домена. Настройте их у регистратора или хостера.
  • Письма не отправляются вообще: Возможно, хостинг блокирует функцию mail(). Используйте SMTP.
  • Конфликт плагинов SMTP: Используйте только один SMTP плагин, отключите остальные.
  • Пользователь вводит неправильный email: Добавьте валидацию email на этапе оформления заказа.

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

  • Используйте SMTP с защищённым соединением (SSL/TLS) для защиты данных;
  • Регулярно обновляйте WooCommerce и почтовые плагины;
  • Отключайте ненужные email уведомления, чтобы снизить нагрузку;
  • Используйте кеширование страниц, но исключайте страницы оформления заказа и корзины;
  • Проверяйте логи и статистику email для своевременного выявления проблем.

Сравнение вариантов настройки отправки писем

СпособПреимуществаНедостаткиКогда использовать
Стандартная функция mail()Простота, не требует доп. настроекВысокий риск попадания в спам, блокировки хостингаМаленькие сайты без проблем с почтой
SMTP плагин (например, WP Mail SMTP)Надежная отправка, поддержка популярных почтовых сервисовТребует настройки, возможны сложности с аутентификациейЛюбой магазин, требующий стабильной доставки писем
Внешний сервис (SendGrid, Mailgun и др.)Высокая доставка, аналитика, масштабируемостьПлатные тарифы, сложность интеграцииСредние и крупные магазины с большим трафиком
Добавление поля телефона в форму регистрации WordPress с подтверждением номера
12.01.2026
WooCommerce: как автоматически удалять товары с нулевым остатком из каталога
07.05.2026
WooCommerce: как автоматически удалять товары и варианты с нулевым остатком
15.05.2026
Как удалить неиспользуемые термины таксономий в WordPress
17.04.2026
Как избежать конфликтов плагинов в WordPress: практические решения и примеры кода
09.12.2025