Можно ли использовать системный cron для запуска функции, подключенной к API AJAX
У меня есть реальная настройка работы cron, и, похоже, она работает. Я изложил основы ниже.
Причина, по которой я спрашиваю, заключается в том, что я не часто вижу, чтобы этот метод упоминался, и мне интересно, не потому ли это, что это плохая идея?
Я не хочу использовать wp-cron
, а отключение wp-cron
на моем сайте вызывает проблемы в других местах (*даже при использовании реального cron для запуска /wp-cron.php?doing_wp_cron
)
Ниже приведен пример того, что я делающий:
Функция
add_action('wp_ajax_my_function', 'my_function');
add_action( 'wp_ajax_nopriv_my_function', 'my_function' );
my_function() {
...stuff
}
Url-адрес
wp-admin/admin-ajax.php?action=my_function
Крон
*/45 12-23 * * * wget http://www.example.com/wp-admin/admin-ajax.php?action=my_function > /dev/null
1 answers
Вы используете систему cron
для запуска функции, подключенной к API AJAX, а не, как гласит ваш заголовок, с помощью "admin-ajax.php
для запуска реального задания cron
". Вы делаете прямо противоположное тому, что написали в названии (я бы посоветовал это отредактировать).
Да, это совершенно нормально. Я посоветовал использовать ту же технику на самом деле. Все, что вы делаете, - это отправляете запрос на сервер по точно рассчитанному расписанию, вместо того, чтобы ждать случайного запроса из Интернета. Это не отличается от любого другого запроса к серверу.