【发布时间】:2012-01-16 17:52:31
【问题描述】:
它只是不起作用,我不知道出了什么问题。也许有人可以帮助我。 这是我的代码:
add_action('kawabunga',function(){
echo '<h1>KAWABUNGA!!!!1</h1>';
});
if (!wp_next_scheduled('kawabunga')) {
wp_schedule_single_event(time()+120, 'kawabunga');
}
然后我用这段代码来查看一个任务发生了什么:
echo 'scheduled = ' . wp_next_scheduled('kawabunga');
echo '<br>time = ' . time();
它的行为符合我的预期:首先显示两个时间戳,在 2 分钟内仅显示第二个,因为执行了一个操作并且不再安排它,因此它返回“false”,而不是时间戳。
但我的函数并没有真正执行,它没有打印<h1>KAWABUNGA!!!!1</h1>,而且我的 IDE 也没有在断点处停止。
我还在网站的其他部分测试了一个操作:do_action('kawabunga');,它工作得很好。它不仅在 cron 中有效。
有什么想法吗?
【问题讨论】:
-
您是否尝试过使用“真实”回调函数而不是匿名函数实现?也许在这种情况下它会以某种方式丢失..