正如我所说,我是PHP调试的新手,虽然我的网站可以工作,但wordpress插件的行为没有达到应有的水平,所以我开始进行PHP调试。
我在Ubuntu上,安装了xdebugger,并在wordpress配置文件中打开了调试。
我的主要问题是弄清楚输出:
[18-Nov-2013 17:46:28 UTC] PHP Warning: call_user_func_array() expects parameter 1 to be a valid callback, class 'lartMainFunctions' does not have a method 'lart_post_thumbnails' in /usr/share/wordpress/wp-includes/plugin.php on line 406
[18-Nov-2013 17:46:28 UTC] PHP Stack trace:
[18-Nov-2013 17:46:28 UTC] PHP 1. {main}() /var/www/lart.co.uk/index.php:0
[18-Nov-2013 17:46:28 UTC] PHP 2. require() /var/www/lart.co.uk/index.php:17
[18-Nov-2013 17:46:28 UTC] PHP 3. require_once() /usr/share/wordpress/wp-blog-header.php:12
[18-Nov-2013 17:46:28 UTC] PHP 4. require_once() /usr/share/wordpress/wp-load.php:29
[18-Nov-2013 17:46:28 UTC] PHP 5. require_once() /etc/wordpress/wp-config.php:55
[18-Nov-2013 17:46:28 UTC] PHP 6. do_action() /usr/share/wordpress/wp-settings.php:296
[18-Nov-2013 17:46:28 UTC] PHP 7. call_user_func_array() /usr/share/wordpress/wp-includes/plugin.php:406
如果有人能让我更好地理解这些错误,那就太好了。
这实际上是1个错误,包括stacktrace,它从开始到结束告诉错误的来源。
一个有效的回调是,当你给一个函数另一个函数时,它应该在完成自己之后执行。
类错过方法意味着没有
public function lart_post_thumbnails() { }
在/usr/share/wordpress/wp-includes/plugin.php on line 406
中调用的类内
也许这是一个拼写错误,应该是last_post_thumbnails()
和s
,而不是r
?