Планирование WordPress не запускается

Я хочу повторить строку после определенного периода времени, используя планирование WordPress. Ниже мой код в functions.php. Ничего не печатается через оператор echo, а также нет ошибки. Пожалуйста, объясните, что я делаю не так.

function add_new_intervals($schedules) {
// add weekly and monthly intervals
$schedules['now'] = array(
'interval' => 1,
'display' => __('Once Weekly')
);

return $schedules;
}

add_filter( 'cron_schedules', 'add_new_intervals');

function my_activation() {
if ( !wp_next_scheduled( 'my_hourly_event' ) ) {
wp_schedule_event( current_time( 'timestamp' ),'now', 'my_hourly_event');
}
}

add_action('wp', 'my_activation');
add_action('my_hourly_event', 'do_this_hourly');

function do_this_hourly() {
echo "This is the Text";
}

0

Решение

Одна вещь, которую вы делаете неправильно, — это ожидание возможности увидеть что-то эхо при запуске задания cron. Лучшим тестом было бы внести изменения в базу данных, что-то вроде:

`update_option('my_cron_test', current_time())`;

Задания WP Cron (как и большинство заданий cron) предназначены для запуска функции, которая должна выполняться по расписанию. Они не предназначены для создания «пользовательского вывода».

Некоторые советы по работе с WP Cron:
Ваш код будет пытаться запускать эту функцию один раз в час, но при настройке WP он может (или не может) запускаться в зависимости от того, посещается ли сайт.

Существует много решений этой слабости, самое простое / эффективное — настроить на сервере сервер crontab, запускающий cron WP. Примерно так:

/15 * * * wget -q -O - http://yourdomain.com/wp-cron.php?doing_wp_cron

Для получения дополнительной помощи с этим (это может быть сложно), проверьте эти статьи:
Правильная настройка рабочих мест WP Cron
Освоение WP Cron

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]