WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

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

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

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

$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', 'filter_function_name_2626' );
function filter_function_name_2626( $new_schedules ){
	// filter...

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

Примеры

#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;
}

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

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

Где используется хук (в ядре WP)

Не используется.
Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться