更新到WordPress 4.7,并且在我启用了一个自定义插件时收到此错误:
( ! ) Warning: call_user_func_array() expects parameter 1 to be a valid callback, no array or string given in /home/vagrant/Sites/wordpress/wp includes/class-wp-hook.php on line 298
我不确定问题是什么,因为堆栈跟踪似乎相当神秘。有关可能破坏插件的内容或如何诊断问题的任何建议?
答案 0 :(得分:5)
正如@Afzal所说,这一行存在问题:
add_action('plugins_loaded', $this->plugin_update());
我们可以通过这个简单的例子复制你得到的错误:
class Test
{
public function init()
{
add_action( 'plugins_loaded', $this->plugin_update() );
}
public function plugin_update()
{
}
}
$obj = new Test;
$obj->init();
解决此问题的常用方法是替换:
add_action( 'plugins_loaded', $this->plugin_update() );
使用:
add_action( 'plugins_loaded', array( $this, 'plugin_update' ) );