Описание pre_get_scheduled_event
— Filter
Хук pre_get_scheduled_event позволяет изменить параметры запланированных событий перед их выполнением. Он срабатывает перед тем, как WordPress извлекает события для выполнения из базы данных, что позволяет изменять или фильтровать эти события
Примеры использования
Пример изменения времени выполнения события:
add_filter('pre_get_scheduled_event', function($event) {
if ($event['hook'] === 'my_event_hook') {
$event['timestamp'] = strtotime('+1 hour');
}
return $event;
});
В этом примере мы изменяем время выполнения события ‘my_event_hook’ на один час вперед
Пример фильтрации событий по имени хука:
add_filter('pre_get_scheduled_event', function($event) {
if ($event['hook'] === 'unwanted_event_hook') {
return false; // Отменяем это событие
}
return $event;
});
Здесь мы фильтруем события и отменяем выполнение события ‘unwanted_event_hook’
Пример добавления дополнительных аргументов к событию:
add_filter('pre_get_scheduled_event', function($event) {
if ($event['hook'] === 'my_event_hook') {
$event['args'][] = 'new_arg';
}
return $event;
});
Мы добавляем новый аргумент ‘new_arg’ к событию ‘my_event_hook’
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить параметры запланированных событий перед их выполнением
– Производительность
Хук может повлиять на производительность, если обрабатывает большое количество событий, поэтому старайтесь использовать его экономно
– Предупреждения
Будьте осторожны при изменении времени выполнения событий, так как это может привести к неожиданным последствиям для функциональности сайта
Альтернативы
Тип: function
Эта функция позволяет получать запланированное событие по его имени
Используйте её, если необходимо получить конкретное событие для его изменения или удаления