我使用wp\\u schedule\\u event让函数updatePostCounts()每小时执行一次。我还使用了插件“WP Crontrol”,它告诉我挂钩(opbs\\u update\\u counts)在那里,并且每小时运行一次。但当时间到期时,什么都不会发生-updatePostCounts()不会执行。这是代码。
public function __construct()
{
$this->addActions();
register_deactivation_hook(__FILE__, array($this, \'deactivation\'));
}
public function deactivation()
{
wp_clear_scheduled_hook(\'opbs_update_counts\');
}
public function addActions()
{
if( !wp_next_scheduled(\'opbs_update_counts\') )
{
wp_schedule_event(time(), \'hourly\', \'opbs_update_counts\');
}
add_action(\'opbs_update_counts\', array(\'cronTaskUpdateCounts\'));
add_action(\'init\', array($this, \'action_init\'));
add_action(\'template_redirect\', array($this, \'action_template_redirect\'));
}
public function cronTaskUpdateCounts()
{
$this->updatePostsCounts();
}
有什么问题吗?
最合适的回答,由SO网友:vancoder 整理而成
add_action(\'opbs_update_counts\', array(\'cronTaskUpdateCounts\'));
should be
add_action( \'opbs_update_counts\', array( $this, \'cronTaskUpdateCounts\' ) );