wpforms.ru wordpress WPForms.ru

Как создать интеграцию WPForms и Slack для моментальных уведомлений

Интеграция WPForms и Slack позволяет мгновенно получать уведомления о новых заявках прямо в ваш рабочий чат. Это особенно полезно для команд, которые хотят быстро реагировать на обращения клиентов без постоянного захода в админку WordPress или почтовый ящик.

Зачем нужна интеграция WPForms и Slack

Slack – популярный инструмент для командного общения. Получая уведомления из WPForms в Slack, вы ускоряете обработку заявок, улучшается коммуникация и минимизируется риск пропуска важных сообщений.

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

Как реализовать интеграцию WPForms и Slack вручную через webhook

WPForms поддерживает отправку данных через webhook, что можно использовать для интеграции с Slack Incoming Webhooks. Рассмотрим пошаговую настройку.

Шаг 1. Создание входящего webhook в Slack

1. Войдите в ваш рабочий Slack и перейдите в Slack API Apps.
2. Создайте новое приложение и добавьте функцию Incoming Webhooks.
3. Активируйте webhook и скопируйте URL для отправки сообщений.

Шаг 2. Настройка webhook в WPForms

В WPForms Pro есть встроенный addon "Webhooks", который позволяет отправлять данные формы на внешний URL.

Если у вас нет Pro версии, можно использовать хук wpforms_process_complete для отправки данных вручную.

Пример кода для отправки уведомления в Slack через webhook

add_action('wpforms_process_complete', 'wpforms_send_slack_notification', 10, 4);
function wpforms_send_slack_notification($fields, $entry, $form_data, $entry_id) {
    $webhook_url = 'ВАШ_SLACK_WEBHOOK_URL';

    // Формируем сообщение
    $message = "Новая заявка с формы: " . $form_data['settings']['form_title'] . "\n";
    foreach ($fields as $field) {
        $message .= $field['name'] . ': ' . $field['value'] . "\n";
    }

    $payload = json_encode(['text' => $message]);

    wp_remote_post($webhook_url, [
        'headers' => ['Content-Type' => 'application/json'],
        'body' => $payload,
        'method' => 'POST',
        'data_format' => 'body',
    ]);
}

Этот код добавьте в файл functions.php вашей темы или в отдельный плагин. Он отправляет текстовое сообщение с названием формы и всеми полями на Slack после успешной отправки формы.

Настройка условных уведомлений в Slack

Часто нужно отправлять уведомления в Slack только по определённым условиям. Например, только если выбран определённый вариант услуги или сумма заказа превышает порог.

Расширим пример кода с условием:

add_action('wpforms_process_complete', 'wpforms_send_slack_notification_conditional', 10, 4);
function wpforms_send_slack_notification_conditional($fields, $entry, $form_data, $entry_id) {
    $webhook_url = 'ВАШ_SLACK_WEBHOOK_URL';

    $notify = false;
    $message = "";

    foreach ($fields as $field) {
        if ($field['name'] === 'Тип услуги' && $field['value'] === 'Экспресс') {
            $notify = true;
        }
        $message .= $field['name'] . ': ' . $field['value'] . "\n";
    }

    if ($notify) {
        $message = "Новая заявка с Экспресс-услугой:\n" . $message;

        wp_remote_post($webhook_url, [
            'headers' => ['Content-Type' => 'application/json'],
            'body' => json_encode(['text' => $message]),
            'method' => 'POST',
            'data_format' => 'body',
        ]);
    }
}

Так вы можете фильтровать уведомления и не нагружать Slack лишними сообщениями.

Использование плагинов для интеграции WPForms и Slack

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

  • WP Webhooks — позволяет создавать сложные интеграции, в том числе с Slack, без кода.
  • Zapier for WordPress — через Zapier можно связать WPForms и Slack, настроив фильтры и формат сообщений.

Эти решения подойдут, если вы предпочитаете визуальные настройки или хотите расширить интеграцию на другие сервисы.

Практические советы по работе с уведомлениями Slack из WPForms

1. Форматируйте сообщения — используйте Markdown или блоки Slack для удобочитаемости.
2. Добавляйте ссылки на запись в админке WPForms для быстрого доступа.
3. Используйте переменные даты и времени для отслеживания времени заявки.
4. Тестируйте webhook с помощью инструментов Postman или curl перед подключением к форме.

Заключение

Интеграция WPForms и Slack позволяет оптимизировать рабочие процессы и повышает скорость реакции на обращения. С помощью простого кода или плагинов вы можете настроить уведомления, которые подойдут именно вашей команде. Если хотите расширить функционал, рекомендуем также посмотреть на плагины из WPShop.

×
День SEO
Время сделать подарок своему WordPress!
-20% на премиум

шаблоны и плагины

Порадуй свой сайт ⋙