cron_schedulesхук-фильтрWP 2.1.0

Позволяет добавить новый интервал времени для Крон задач (расписаний).

При добавлении Крон задачи, ей обычно указывается интервал времени, через который эта задача должна повторяться вновь и вновь. По умолчанию в WP таких интервалов всего три:

$schedules = array(
	'hourly'     => array( 'interval' => HOUR_IN_SECONDS,      'display' => __( 'Once Hourly' ) ),
	'twicedaily' => array( 'interval' => 12 * HOUR_IN_SECONDS, 'display' => __( 'Twice Daily' ) ),
	'daily'      => array( 'interval' => DAY_IN_SECONDS,       'display' => __( 'Once Daily' ) ),
);

Через этот фильтр можно расширить список интервалов, добавив свои интервалы, которые затем можно использовать при создании Крон задачи.

Как создавать свои задачи подробно описано в функции wp_schedule_event().

Использование

add_filter( 'cron_schedules', 'wp_kama_cron_schedules_filter' );

/**
 * Function for `cron_schedules` filter-hook.
 * 
 * @param array $new_schedules An array of non-default cron schedules keyed by the schedule name.
 *
 * @return array
 */
function wp_kama_cron_schedules_filter( $new_schedules ){

	// filter...
	return $new_schedules;
}
$new_schedules(массив)
Массив с данными новых интервалов времени.
По умолчанию: array()

Примеры

0

#1 Добавление нового интервала для Cron

Добавим интервал события - раз в 5 минут:

// регистрируем пятиминутный интервал
add_filter( 'cron_schedules', 'cron_add_five_min' );
function cron_add_five_min( $schedules ) {
	$schedules['five_min'] = array(
		'interval' => 60 * 5,
		'display'  => 'Раз в 5 минут'
	);
	return $schedules;
}

Список изменений

С версии 2.1.0 Введена.

Где вызывается хук

wp_get_schedules()
cron_schedules
wp-includes/cron.php 1115
return array_merge( apply_filters( 'cron_schedules', array() ), $schedules );

Где используется хук в WordPress

Использование не найдено.