Автоматизация email уведомлений при изменении статуса заказа в WooCommerce помогает улучшить коммуникацию с клиентами и повысить качество сервиса. В этой статье разберём, как настроить отправку кастомных писем при смене статуса заказа, используя хуки WooCommerce, а также рассмотрим несколько полезных плагинов для расширения функционала.
Что такое статусы заказов в WooCommerce и зачем автоматизировать email уведомления
WooCommerce по умолчанию имеет несколько статусов заказов: pending, processing, on-hold, completed, cancelled, refunded и failed. Каждый из них отражает текущее состояние заказа и позволяет магазину управлять процессом выполнения.
Автоматическая отправка email уведомлений при смене статуса облегчает информирование клиентов — например, когда заказ переходит в статус "Выполнен" или "Отменён". Это сокращает количество звонков и писем в поддержку и улучшает пользовательский опыт.
Однако стандартные письма WooCommerce не всегда покрывают все бизнес-задачи. Иногда требуется отправлять дополнительные email с уникальным содержанием или в особых случаях, например, при смене статуса на "В ожидании оплаты" или "Обработка возврата".
Использование хуков WooCommerce для отправки кастомных email
WooCommerce предоставляет удобный хук woocommerce_order_status_changed, который срабатывает при изменении статуса заказа. Используя этот хук, можно добавить свой обработчик для отправки кастомного письма.
Рассмотрим пример, как отправить кастомное письмо клиенту при переходе заказа в статус completed:
add_action('woocommerce_order_status_changed', 'wpfront_send_custom_email_on_completed', 10, 4);
function wpfront_send_custom_email_on_completed($order_id, $old_status, $new_status, $order) {
if ($new_status === 'completed') {
$to = $order->get_billing_email();
$subject = 'Ваш заказ выполнен!';
$headers = ['Content-Type: text/html; charset=UTF-8'];
$message = 'Здравствуйте, <br>Ваш заказ #' . $order_id . ' успешно выполнен. Спасибо за покупку!';
wp_mail($to, $subject, $message, $headers);
}
}В этом примере при смене статуса на "completed" автоматически отправляется простое HTML-письмо с благодарностью. Вы можете расширить логику, добавив шаблоны писем, вложения или динамическое содержание.
Параметры хука
Обработчик получает 4 параметра:
$order_id— ID заказа;$old_status— предыдущий статус заказа;$new_status— новый статус заказа;$order— объект WC_Order для работы с данными заказа.
Это позволяет гибко реагировать на любые изменения статусов.
Примеры автоматизации отправки email для разных статусов
Разберём ещё несколько примеров отправки писем для других статусов.
Отправка уведомления при переходе заказа в статус "Отменён"
add_action('woocommerce_order_status_changed', 'wpfront_notify_cancelled_order', 10, 4);
function wpfront_notify_cancelled_order($order_id, $old_status, $new_status, $order) {
if ($new_status === 'cancelled') {
$to = $order->get_billing_email();
$subject = 'Ваш заказ отменён';
$message = 'К сожалению, ваш заказ #' . $order_id . ' был отменён. Если у вас есть вопросы, свяжитесь с нашей поддержкой.';
wp_mail($to, $subject, $message);
}
}Отправка напоминания при переходе в статус "Ожидает оплаты"
add_action('woocommerce_order_status_changed', 'wpfront_reminder_pending_payment', 10, 4);
function wpfront_reminder_pending_payment($order_id, $old_status, $new_status, $order) {
if ($new_status === 'pending') {
$to = $order->get_billing_email();
$subject = 'Напоминание о неоплаченном заказе';
$message = 'Ваш заказ #' . $order_id . ' ожидает оплату. Пожалуйста, завершите оплату для продолжения обработки.';
wp_mail($to, $subject, $message);
}
}Полезные плагины для расширения email уведомлений WooCommerce
Если требуется более сложная настройка писем, имеет смысл обратить внимание на специализированные плагины:
- WooCommerce Email Customizer — позволяет визуально редактировать шаблоны писем, добавлять логотипы, менять стили и содержимое.
- Follow-Ups — расширяет возможности по автоматической отправке цепочек писем, напоминаний, акций и т.д.
- WPFront Notifications — плагин от команды WPShop, который позволяет создавать кастомные уведомления, включая email, для различных событий.
Эти инструменты помогут создать профессиональные и удобные уведомления без написания кода.
Советы по отладке и улучшению отправки email
Иногда письма не доходят до клиента или попадают в спам. Чтобы минимизировать проблемы, рекомендуем:
- Использовать SMTP-плагин, например WP Mail SMTP, для надежной отправки через внешние почтовые сервисы.
- Тестировать письма на разных почтовых клиентах, чтобы проверить корректность отображения HTML.
- Добавлять в письма уникальный идентификатор заказа и контактную информацию службы поддержки.
- Проверять логи сервера и WooCommerce для выявления ошибок отправки.
Заключение: автоматизация email уведомлений — важный шаг для WooCommerce
Настройка автоматической отправки писем при смене статусов заказов позволяет не только улучшить информирование клиентов, но и оптимизировать работу магазина. Используйте хуки WooCommerce для кастомных решений или готовые плагины для быстрого внедрения. Если хотите расширить функционал уведомлений, рекомендую попробовать плагин WPFront Notifications от WPShop, который хорошо интегрируется с WooCommerce и другими популярными плагинами.