Создание автоматических уведомлений о статусах заказов WooCommerce

Автоматизация уведомлений о смене статусов заказов в WooCommerce помогает улучшить коммуникацию с клиентом и повысить уровень сервиса. В этой статье мы разберём, как с помощью кода и плагинов создавать кастомные уведомления, которые будут отправляться автоматически при изменении статуса заказа.

Почему нужны кастомные уведомления о статусах заказов

Стандартные уведомления WooCommerce охватывают основные статусы заказов, но часто бизнесу нужны более специфичные сообщения или дополнительные каналы связи. Например, отправка уведомления в Telegram, SMS или в CRM, добавление персонализированных данных в письмо, уведомления для администраторов при определённых статусах и т.д.

Использование кастомных уведомлений позволяет:

  • Улучшить клиентский опыт за счёт своевременной информации.
  • Автоматизировать рутинные процессы поддержки и продаж.
  • Увеличить конверсию за счёт правильного информирования клиента.

Использование хуков WooCommerce для создания уведомлений о смене статуса

WooCommerce предоставляет множество хуков, связанных с изменением статусов заказов. Один из самых часто используемых — woocommerce_order_status_{old_status}_to_{new_status}. С его помощью можно запускать свою функцию при переходе заказа из одного статуса в другой.

Рассмотрим пример, как отправлять кастомное уведомление при смене статуса заказа с processing на completed.

add_action('woocommerce_order_status_processing_to_completed', 'wporders_send_custom_notification', 10, 1);
function wporders_send_custom_notification($order) {
    $to = $order->get_billing_email();
    $subject = 'Ваш заказ завершён';
    $message = 'Здравствуйте, ваш заказ №' . $order->get_id() . ' успешно выполнен. Спасибо за покупку!';
    wp_mail($to, $subject, $message);
}

В этом примере мы используем стандартную функцию wp_mail для отправки письма. В реальном проекте можно расширить функционал, добавив шаблон письма, HTML-верстку, или подключить сторонние сервисы рассылок.

Обработка нескольких переходов статуса

Если нужно обработать несколько переходов, например, уведомлять и при переходе в статус on-hold и при переходе в cancelled, можно добавить несколько хуков:

add_action('woocommerce_order_status_pending_to_on-hold', 'wporders_notify_on_hold', 10, 1);
add_action('woocommerce_order_status_processing_to_cancelled', 'wporders_notify_cancelled', 10, 1);

function wporders_notify_on_hold($order) {
    // логика уведомления
}

function wporders_notify_cancelled($order) {
    // логика уведомления
}

Подключение Telegram-уведомлений при смене статуса заказа

Для улучшения контроля заказов можно отправлять уведомления в Telegram, например, менеджерам магазина. Для этого понадобится создать Telegram-бота и получить токен, а также chat_id группы или пользователя.

Пример функции отправки сообщения в Telegram:

function wporders_send_telegram_message($message) {
    $token = 'ТОКЕН_ВАШЕГО_БОТА';
    $chat_id = 'ВАШ_CHAT_ID';
    $url = 'https://api.telegram.org/bot' . $token . '/sendMessage';

    $args = [
        'body' => [
            'chat_id' => $chat_id,
            'text' => $message,
            'parse_mode' => 'HTML'
        ]
    ];

    wp_remote_post($url, $args);
}

Добавим вызов этой функции при смене статуса заказа:

add_action('woocommerce_order_status_pending_to_processing', 'wporders_telegram_notify_order_processing', 10, 1);
function wporders_telegram_notify_order_processing($order) {
    $message = 'Заказ №' . $order->get_id() . ' перешёл в статус <b>Обработка</b>.';
    wporders_send_telegram_message($message);
}

Использование плагинов для расширения функционала уведомлений

Если вы не хотите писать код с нуля, можно воспользоваться мощными плагинами для настройки уведомлений:

  • Clearfy Pro — среди функций есть управление уведомлениями и оптимизация WooCommerce.
  • WPRemark — плагин для отзывов и коммуникаций с клиентами, можно адаптировать под уведомления.

Оба плагина имеют удобный интерфейс и позволяют гибко настраивать типы уведомлений, шаблоны и условия их отправки.

Как создать кастомный email-шаблон для уведомлений о статусах

WooCommerce позволяет создавать собственные шаблоны писем, чтобы сделать уведомления более информативными и красивыми. Для этого:

  1. Создайте папку woocommerce/emails в вашей теме.
  2. Скопируйте нужный шаблон из плагина WooCommerce woocommerce/templates/emails/.
  3. Отредактируйте шаблон под ваши задачи, добавив нужные данные из заказа.

Пример добавления дополнительного блока в email:

<?php
// Получим объект заказа
$order = $email->object;
?>

<p>Дополнительная информация по вашему заказу:</p>
<ul>
  <li>Дата оплаты: <?php echo $order->get_date_paid() ?></li>
  <li>Метод доставки: <?php echo $order->get_shipping_method() ?></li>
</ul>

Таким образом вы можете добавить любую информацию, которая важна для клиента или менеджера.

Отладка и логирование уведомлений

При разработке важно проверять, что уведомления действительно отправляются корректно. Для этого рекомендуется включать логирование с помощью встроенного в WooCommerce или через плагины типа Clearfy Pro.

Пример логирования отправки уведомления:

if (defined('WP_DEBUG') && WP_DEBUG) {
    error_log('Уведомление отправлено на почту: ' . $to . ' для заказа №' . $order->get_id());
}

Это поможет быстро выявлять проблемы и улучшать систему уведомлений.

Заключение по настройке автоматических уведомлений

Использование кастомных уведомлений о смене статусов заказов — это мощный инструмент для повышения эффективности работы магазина на WooCommerce. Комбинируйте хуки, кастомные шаблоны, внешний сервисы и плагины для создания удобной и надёжной системы информирования клиентов и сотрудников.

Для быстрой и удобной реализации рекомендуем изучить плагины из каталога WPSHOP, которые помогут расширить функционал без глубоких знаний программирования.

Автоматизация обработки заказов без WooCommerce в WordPress
01.01.2026
Создание и использование shortcode в WordPress: подробное руководство с примерами кода
11.11.2025
Интеграция WordPress с системой управления заказами 1С
27.12.2025
Создание автоматических заказов в WordPress без WooCommerce
19.01.2026
Автоматическое сохранение заказов в WordPress без WooCommerce
31.01.2026