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

|

Почему письма WooCommerce не отправляются через SMTP

Основные причины сбоев SMTP в WooCommerce — неправильные настройки SMTP-сервера, блокировка хостингом исходящей почты, несовместимость плагинов и ошибки в коде темы. При этом WooCommerce использует встроенную функцию WordPress wp_mail(), которая по умолчанию отправляет письма через PHP mail(), что часто приводит к попаданию писем в спам или их потере.

Как диагностировать проблему с отправкой писем

Шаг 1. Проверка системного лога ошибок

Включите отладку отправки почты, добавив в wp-config.php:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Затем проверьте файл wp-content/debug.log на наличие ошибок, связанных с почтой.

Шаг 2. Проверка работы SMTP через тестовый плагин

Установите плагин WP Mail SMTP и настройте SMTP-сервер. После настройки используйте функцию тестовой отправки письма из плагина.

Шаг 3. Проверка блокировки почты хостингом

Свяжитесь с поддержкой хостинга или проверьте документацию, чтобы узнать, разрешена ли исходящая почта через SMTP, и нет ли ограничений по портам (обычно 587, 465).

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

1. Настройка плагина WP Mail SMTP

Отдайте предпочтение плагинам с хорошей репутацией, например, Clearfy Pro поддерживает интеграцию с SMTP и оптимизацию почты.

В разделе Настройки введите:

2. Принудительное использование SMTP в WooCommerce

Добавьте следующий код в functions.php вашей темы или в отдельный плагин для принудительной настройки почты через SMTP:

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       = 'user@example.com';
    $phpmailer->FromName   = 'Название сайта';
});

3. Проверка совместимости плагинов

Отключите все плагины, кроме WooCommerce и SMTP, чтобы исключить конфликт. Если почта появляется, включайте плагины по одному.

4. Очистка кеша и перезапуск WP-Cron

Если вы используете кеширование (например, Redis, Memcached, или плагины кеша), очистите кеш. Также перезапустите планировщик задач:

wget -q -O - https://example.com/wp-cron.php?doing_wp_cron

Как проверить, что проблема решена

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

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

Таблица сравнения методов настройки SMTP в WooCommerce

МетодПлюсыМинусыПодходит для
Плагин WP Mail SMTPПростота, тестирование, поддержка популярных сервисовМожет конфликтовать с другими плагинамиШирокий круг пользователей
Ручная настройка phpmailer_initПолный контроль, гибкостьТребует знаний PHP и SMTPРазработчики и администраторы
Использование внешних SMTP-сервисовНадежность, масштабируемость, лучшая доставкаМожет потребовать подписки и настройки APIСайты с высокой нагрузкой и объемом почты
Автоматизация удаления старых постов в WordPress по дате и статусу
25.11.2025
Автоматическое отключение неиспользуемых шорткодов в WordPress: практическое руководство
07.02.2026
Как отследить и решить проблемы с замедлением WordPress
18.03.2026
Автоматизация резервного копирования WordPress с помощью плагинов и кода
02.12.2025
Обслуживание REST API WordPress — практические советы и примеры кода
29.11.2025
×
Сделай свой сайт крутым!

Скидка -20% на премиум плагины WordPress

Выбрать плагин сейчас ⋙