我需要在我的插件中实现一个计划任务,我试图遵循文档中的示例,将一个类方法作为目标传递。我安装了Cron管理器插件,我看到我的钩子已经安排好了,但第一个计划已经过了几秒钟。我想这是因为WP将第一个时间表设置为“现在”,应该立即调用挂钩。
问题是我附加到挂钩的方法没有被调用,Cron管理器显示“剩余秒数:-X”(其中X是我计划任务时经过的秒数)。
我将跳过wp_schedule
据我所知,它是有效的(钩子在预定列表中,虽然过去有时间戳),所以下面是相关代码:
// Cron hook is called myclass_cron
class MyClass {
public function __construct() {
add_action(\'init\', array($this, \'wordpress_loaded\'));
}
public function wordpress_loaded() {
add_action(\'myclass_cron\', array($this, \'cron_tasks\'));
}
public function cron_tasks() {
// Cron stuff. I tried adding a "sleep()" command to see if page load was slower, but it clearly doesn\'t go through this method
}
}
如果我添加
do_action(\'myclass_cron\')
,
cron_tasks()
按预期运行。我想知道我是不是在打电话
add_action()
太晚了(即加载WP时),但我尝试将其移动到类构造函数,问题仍然存在。
提前感谢您的回答。