Как создать автоматический тег для тикетов в WPtickets WordPress

Автоматизация процесса тегирования тикетов — важный элемент удобного и быстрого управления системой поддержки на WordPress с плагином WPtickets. Теги помогают быстро фильтровать заявки, распределять их между отделами и приоритетизировать задачи. В этой статье мы подробно разберем, как реализовать автоматическое присвоение тегов тикетам на основе их содержимого, статуса или других условий.

Зачем нужен автоматический тег для тикетов в WPtickets

Ручное добавление тегов к каждому тикету — рутинная и часто ошибочная задача, особенно при большом потоке заявок. Автоматический тег позволяет:

  • Сэкономить время сотрудников поддержки
  • Обеспечить единообразие классификации тикетов
  • Упростить поиск и фильтрацию по тегам
  • Автоматизировать маршрутизацию заявок

Например, если в тикете встречается слово "оплата", можно автоматически присвоить ему тег "Платежи", чтобы сразу направить заявку к соответствующему специалисту.

Как создать автоматический тег с помощью WPtickets и PHP-кода

Использование хука для автоматического добавления тегов при создании тикета

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

Пример функции, которая автоматически добавляет тег «Приоритет: Высокий», если в тексте тикета встречается слово «срочно»:

function wpticketsru_auto_add_tag($ticket_id, $ticket_data) {
    // Получаем содержимое тикета
    $content = isset($ticket_data['content']) ? $ticket_data['content'] : '';

    // Проверяем наличие ключевого слова
    if (stripos($content, 'срочно') !== false) {
        // Получаем текущие теги тикета
        $tags = get_post_meta($ticket_id, 'wptickets_tags', true);
        if (!is_array($tags)) {
            $tags = [];
        }

        // Добавляем тег, если его нет
        if (!in_array('Приоритет: Высокий', $tags)) {
            $tags[] = 'Приоритет: Высокий';
            update_post_meta($ticket_id, 'wptickets_tags', $tags);
        }
    }
}
add_action('wptickets_after_ticket_insert', 'wpticketsru_auto_add_tag', 10, 2);

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

Расширение логики: теги по статусу и категории

Также можно автоматически добавлять теги в зависимости от статуса тикета или выбранной категории. Например, если тикет находится в статусе «Ожидание ответа», можно добавить тег «Ждем клиента».

function wpticketsru_tag_by_status($ticket_id, $ticket_data) {
    $status = isset($ticket_data['status']) ? $ticket_data['status'] : '';

    if ($status === 'waiting_customer') {
        $tags = get_post_meta($ticket_id, 'wptickets_tags', true);
        if (!is_array($tags)) {
            $tags = [];
        }
        if (!in_array('Ждем клиента', $tags)) {
            $tags[] = 'Ждем клиента';
            update_post_meta($ticket_id, 'wptickets_tags', $tags);
        }
    }
}
add_action('wptickets_after_ticket_update', 'wpticketsru_tag_by_status', 10, 2);

Этот код реагирует на обновление тикета и добавляет нужный тег по статусу.

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

Если вы предпочитаете не писать код, можно воспользоваться плагинами для автоматизации WordPress, которые работают с кастомными постами и метаданными, к которым относятся тикеты WPtickets.

Плагин Uncanny Automator

Uncanny Automator позволяет создавать автоматические сценарии на основе действий внутри WordPress. Можно настроить триггер на создание или обновление тикета и действие — добавление тега.

Преимущества:

  • Интуитивно понятный интерфейс
  • Поддержка множества интеграций
  • Не требует программирования

Недостаток — в бесплатной версии функционал ограничен, для сложных сценариев потребуется премиум.

Плагин Advanced Custom Fields (ACF) + WP Code snippets

Если у вас есть навыки PHP, можно использовать ACF для создания поля тегов и WP Code snippets для добавления автоматизации через хуки. Такой подход гибче и позволяет кастомизировать логику под любые задачи.

Тонкости и рекомендации по работе с тегами в WPtickets

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

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

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

Пример комплексного решения: автоматическое тегирование по ключевым словам и статусу

Объединим два предыдущих примера в одну функцию, которая добавляет теги по содержимому и статусу тикета:

function wpticketsru_auto_tagging($ticket_id, $ticket_data) {
    $content = isset($ticket_data['content']) ? $ticket_data['content'] : '';
    $status = isset($ticket_data['status']) ? $ticket_data['status'] : '';

    $tags = get_post_meta($ticket_id, 'wptickets_tags', true);
    if (!is_array($tags)) {
        $tags = [];
    }

    if (stripos($content, 'срочно') !== false && !in_array('Приоритет: Высокий', $tags)) {
        $tags[] = 'Приоритет: Высокий';
    }

    if ($status === 'waiting_customer' && !in_array('Ждем клиента', $tags)) {
        $tags[] = 'Ждем клиента';
    }

    update_post_meta($ticket_id, 'wptickets_tags', $tags);
}
add_action('wptickets_after_ticket_insert', 'wpticketsru_auto_tagging', 10, 2);
add_action('wptickets_after_ticket_update', 'wpticketsru_auto_tagging', 10, 2);

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

Заключение

Автоматическое присвоение тегов в WPtickets — мощный инструмент для оптимизации работы службы поддержки на WordPress. Используя хуки и кастомный код, вы можете адаптировать систему под любые бизнес-задачи, а при необходимости подключать сторонние плагины для расширения функционала без программирования.

Для более сложных сценариев и интеграций рекомендуем ознакомиться с документацией WPtickets и возможностями WordPress API. Если хотите попробовать готовые решения или дополнения, загляните на wpshop.ru, где представлены полезные инструменты для развития вашего сайта и поддержки клиентов.

Как создать комплексную систему отзывов и обработки тикетов в WordPress
01.03.2026
Как удалить все тикеты из базы WPtickets без удаления плагинов
19.05.2026
Как избежать проблем с кэшированием при работе с WPtickets в WordPress
19.06.2026
Как решить проблемы с отправкой почты в WPtickets на WordPress
20.04.2026
Создание расписания обработки тикетов в WordPress для повышения эффективности поддержки
22.12.2025