Автоматизация закрытия тикетов — важный элемент эффективной службы поддержки. В системе WPtickets можно настроить автозакрытие тикетов, которые долго не обновлялись, или по другим критериям, чтобы не перегружать менеджеров и своевременно освобождать очередь. В этой статье мы подробно рассмотрим, как реализовать автозакрытие тикетов с помощью собственного кода и настроек плагина.
Почему важно использовать автозакрытие тикетов в WPtickets
Без автоматического закрытия система поддержки может быстро превратиться в хаос. Заброшенные тикеты создают лишнюю нагрузку на базу данных и усложняют поиск действительно актуальных заявок. Автозакрытие позволяет:
- Снизить нагрузку на сотрудников, убрав из списка устаревшие тикеты.
- Поддерживать актуальность очереди, ускоряя обработку новых обращений.
- Автоматизировать процессы и уменьшить ручной труд.
WPtickets предлагает базовый функционал для закрытия тикетов, но для гибких условий автозакрытия потребуется добавить собственные скрипты.
Настройка базового автозакрытия в WPtickets
В плагине WPtickets есть опция «Автоматическое закрытие» тикетов по времени без ответа или обновления. Чтобы включить ее:
- Перейдите в админ-панель WordPress > WPtickets > Настройки.
- В разделе «Общие» найдите опцию «Автоматическое закрытие тикетов».
- Установите интервал, например, 7 дней без ответа.
- Сохраните изменения.
Эта настройка подходит для стандартных сценариев, но не всегда достаточно гибка. Например, вы можете захотеть закрывать тикеты только определенных типов или с определенными метками.
Создание кастомного автозакрытия тикетов с помощью кода
Для более точного управления можно написать функцию, которая будет запускаться по крону и закрывать тикеты по нужным критериям. Ниже пример кода, который ищет тикеты без обновлений более 14 дней и автоматически меняет их статус на «Закрыт».
function wptickets_auto_close_old_tickets() {
global $wpdb;
$post_type = 'wptickets_ticket';
$days = 14;
$date_threshold = date('Y-m-d H:i:s', strtotime("-" . $days . " days"));
// Получаем тикеты, которые не обновлялись более $days дней и еще не закрыты
$tickets = $wpdb->get_results($wpdb->prepare(
"SELECT ID FROM $wpdb->posts WHERE post_type = %s AND post_status = 'publish' AND post_modified < %s",
$post_type,
$date_threshold
));
if (!empty($tickets)) {
foreach ($tickets as $ticket) {
// Меняем статус тикета на 'closed' (предполагается, что такой статус зарегистрирован)
wp_update_post(array(
'ID' => $ticket->ID,
'post_status' => 'closed'
));
}
}
}
// Регистрируем cron событие при активации темы или плагина
if (!wp_next_scheduled('wptickets_auto_close_event')) {
wp_schedule_event(time(), 'daily', 'wptickets_auto_close_event');
}
// Хук для выполнения функции
add_action('wptickets_auto_close_event', 'wptickets_auto_close_old_tickets');Этот код можно добавить в файл functions.php вашей темы или в отдельный плагин. Он выполняется раз в сутки и автоматически закрывает тикеты, которые не обновлялись более 14 дней.
Что нужно учесть при использовании кода
Важно, чтобы статус closed был зарегистрирован в WPtickets. Если такого статуса нет, его нужно добавить через фильтры плагина или использовать существующий.
Также стоит предусмотреть уведомления для клиентов и сотрудников о закрытии тикетов, чтобы не было недоразумений.
Интеграция с WPRemark для расширенной автоматизации
Если вы используете плагин WPRemark, можно дополнить автозакрытие автоматической оценкой тикетов и отправкой отзывов. Это позволит не просто закрывать тикеты, а собирать обратную связь.
Для этого можно использовать следующий пример кода, который после закрытия тикета запускает форму оценки:
function wptickets_auto_close_with_remark($ticket_id) {
// Закрываем тикет
wp_update_post(array(
'ID' => $ticket_id,
'post_status' => 'closed'
));
// Генерируем ссылку на форму оценки из WPRemark
$remark_url = add_query_arg(array(
'ticket' => $ticket_id,
'action' => 'feedback'
), 'https://wpshop.ru/wpremark-form/?utm_source=wptickets.ru&utm_medium=article&utm_campaign=kak-sozdat-avtozakrytie-tiketov-v-wptickets');
// Отправляем письмо клиенту с просьбой оценить поддержку
wp_mail(
get_post_meta($ticket_id, '_client_email', true),
'Пожалуйста, оцените качество поддержки',
'Ваш тикет #' . $ticket_id . ' был закрыт. Оставьте, пожалуйста, отзыв по ссылке: ' . $remark_url
);
}
add_action('wptickets_ticket_closed', 'wptickets_auto_close_with_remark');Таким образом, можно объединить автоматическое закрытие и сбор отзывов, повысив качество поддержки.
Советы по эффективному использованию автозакрытия в WPtickets
Настройка уведомлений
Обязательно настройте уведомления для клиентов и саппорта. Например, предупреждение за 2 дня до автозакрытия, чтобы клиент мог ответить и продлить жизнь тикету.
WPtickets позволяет настраивать шаблоны писем, где можно внедрить динамические данные и ссылки для быстрого ответа.
Фильтрация и условия закрытия
Используйте кастомные поля и метки для исключения важных тикетов из автозакрытия. Например, тикеты с приоритетом «критический» не должны закрываться автоматически.
Регулярный мониторинг
Проверьте, как работает автозакрытие через неделю после настройки. Отслеживайте логи и отзывы, чтобы избежать ошибок и недовольства клиентов.
Выводы и практические рекомендации
Автоматическое закрытие тикетов в WPtickets — простой и мощный инструмент для оптимизации работы службы поддержки. С помощью базовых настроек и кастомного кода вы можете настроить гибкие правила, которые подойдут именно вашему бизнесу.
Не забывайте про уведомления и сбор обратной связи, чтобы поддерживать высокое качество сервиса.
Для быстрой реализации и расширения возможностей рекомендуем ознакомиться с плагинами WPRemark и WPRemark, доступными на wpshop.ru.