每次刷新页面时,我的cron作业update_backup_now_feed
似乎计时器已重置。我正在使用一个名为“crontrol”的插件,它显示下一次调用之前的时间,每次刷新时,它都会重置为1小时。唯一一次日程安排似乎是在我避开网站一个多小时后刷新的时候。
下面的代码是否有问题,或者这是一个bug?我在多站点上工作。我发现this question 这是相似的-在回答的评论部分,用户提到只有在多站点上才有相同的问题。
Why does refreshing the page reset the timer for wp cron events?
这是我所有与cron相关的代码。
// add custom cron interval
add_filter(\'cron_schedules\', \'add_custom_cron_intervals\', 10, 1);
function add_custom_cron_intervals($schedules) {
$schedules[\'every_two_minutes\'] = array(
\'interval\' => 120,
\'display\' => \'Every Two Minutes\'
);
return (array)$schedules;
}
add_action(\'init\', \'register_update_feed_event\');
function register_update_feed_event() {
if(!wp_next_scheduled(\'update_now_feed\')) {
wp_schedule_event(time(), \'every_two_minutes\', \'update_now_feed\');
}
if(!wp_next_scheduled(\'update_backup_now_feed\')) {
wp_schedule_event(time(), \'hourly\', \'update_backup_now_feed\');
}
}
add_action(\'update_now_feed\', \'update_now_feed_function\');
function update_now_feed_function() {
NowFeed::set_instagram_cache();
NowFeed::set_twitter_cache();
}
add_action(\'update_backup_now_feed\', \'update_backup_now_feed_function\');
function update_backup_now_feed_function() {
NowFeed::set_instagram_backup_cache();
NowFeed::set_twitter_backup_cache();
}
UDPATE我以为我已经解决了,但它却引发了更多的问题。
在昨晚的部分时间里,我的代码如下所示。我已删除wp\\u next\\u计划检查。。。它确实创造了50个不同的预定活动。
//if(!wp_next_scheduled(\'update_backup_now_feed\')) {
wp_schedule_event(time(), \'hourly\', \'update_backup_now_feed\');
//}
crontrol只显示了其中一个,因为它们都有相同的名称。我意识到我可以继续删除它们,但它们并没有消失。我一直在点击,最后,大约50次点击后,它们就消失了。这无疑帮助了我解决了一些问题。不要拉一个me并删除该条件(尽管我不知道如何更新cron作业)
现在,我已将此代码放入我的WP\\u配置中。define(\'DISABLE_WP_CRON\', true);
看看是否可以解决更多问题。
此时,刷新页面不会调用我的任何事件。但是,我转到自定义URL来测试cron-/wp-cron.php?doing_wp_cron
当我刷新它时,我的行为有时会显示出反应。这是我不明白的部分。
Does disabled wp cron and enabling it via real cron cause the \'timers\' to stop functioning as expected? If I have an hourly job and I call the cron every 5 minutes, will it also be called every 5 minutes? Why does calling it manually sometimes call the event and sometimes not?