问题描述

这是一个愚蠢的问题…

我安排了一个行动,每小时运行一次:

if(!wp_next_scheduled('my_hourly_events'))
  wp_schedule_event(time(), 'hourly', 'my_hourly_events');

add_action('my_hourly_events', 'the_function_to_run');

function the_function_to_run(){
   echo 'it works!';
}

如果没有等待一个小时,我该怎么测试? 🙂

我尝试在此代码之前添加 wp_clear_scheduled_hook('my_hourly_events');,然后添加 wp_cron(),但是我看不到我的功能正在运行…

编辑:

好的,我在我的函数里添加了一个 trigger_error(),检出 apache 错误日志,它在那里:)

所以现在我更加困惑:

  • 如何在后台运行 wp-cron?因为显然,如果我看不到输出会发生什么…

  • 这在对象上下文中似乎不起作用; 为什么?

最佳解决方案

我最喜欢的插件是 Core Control,它具有非常好的模块,用于显示在 cron 中发生的事件 – 哪些事件设置,何时下次触发等等。

弄脏你的手脏水平见_get_cron_array(),它返回 cron 事件的内部存储数据 (顶级的键是时间戳) 。

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。