WordPress как на ладони
Шаблоны, плагины и темы для настоящих поклонников Elementor. От TemplateMonster.com wordpress jino

Как передать переменную в крон функцию?

вот код от KAMA - я подработал под себя - мне так удобно, нужно сообщить функции днем число 2 , а ночью число 4 - как правильно это сделать ?

// добавляем запланированный хук 1 НОЧЬ 
add_action('wp', 'my_activation1');
function my_activation1() {
	if( ! wp_next_scheduled( 'my_hourly_event' ) ) {
		wp_schedule_event( time(ночь), 'daily', 'my_hourly_event', $peremennaya = 4 );
	}
}

// добавляем запланированный хук 2 ДЕНЬ 
add_action('wp', 'my_activation2');
function my_activation2() {
	if( ! wp_next_scheduled( 'my_hourly_event' ) ) {
		wp_schedule_event( time(день), 'daily', 'my_hourly_event', $peremennaya = 2 );
	}
}

// как сюда передать переменную ???
add_action('my_hourly_event', 'do_this_hourly');
function do_this_hourly($peremennaya) {
	// делаем что-либо каждый час
}
Заметки к вопросу:
Maestro 26 дней назад

Как вариант вот такой костыль:

function my_activation(){
	global $new;
	$new = 'value';
}

function do_this_hourly(){
	my_activation();
	global $new;
	echo $new;
}

do_this_hourly();
campusboy 26 дней назад

А 4 параметр у wp_schedule_event() разве не для этого? Как раз переделать доп. параметры.

kolshix 26 дней назад

А 4 параметр...
это понятно, куда далее его предавать ??

// как сюда передать переменную ???
add_action('my_hourly_event', 'do_this_hourly');
function do_this_hourly($peremennaya) {
	// делаем что-либо каждый час
}
campusboy 26 дней назад

Ну так он уже передан даже у тебя по коду. Разве в $peremennaya в do_this_hourly() ничего нет?

kolshix 26 дней назад

ещё не пробовал - позже потестирую
меня смущает что передовал в
my_hourly_event а получит do_this_hourly

campusboy 26 дней назад

Будем считать, что это магия smile

Maestro 26 дней назад

Магия это хорошо ^^

Kama 26 дней назад

По моему лучше создать одно событие и уже в функции do_this_hourly() проверять день сейчас или ночь и разделять логику...

kolshix 26 дней назад

Вопрос решил через crontrol - плагин
в файле функций создал 2 кода

//* ==START==    *//
if ( ! wp_next_scheduled( 'simplyexclude_cron' ) ) {
	// wp_schedule_event( time(), 'daily', 'my_task_hook' );
}

if ( ! wp_next_scheduled( 'simplyexclude_cron_second' ) ) {
	// wp_schedule_event( time(), 'daily', 'my_task_hook' );
}

в плагин добавил событие и Arguments ["4"] и для другого запуска ["2"]

add_action( 'simplyexclude_cron', 'do_this_daily_simplyexclude' );
add_action( 'simplyexclude_cron_second', 'do_this_daily_simplyexclude' );
function do_this_daily_simplyexclude($kolichestvo_otkrit) {
	$kolichestvo_otkrit // эта переменная получает аргумент
0
kolshix
431
26 дней назад

Нет ответов на этот вопрос.

    На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация