如何调试php代码,同时开发wordpress插件


How to debug php code while developing wordpress plugins?

我开始自己开发一些WordPress插件。在开发插件时,我在插件中使用不同的钩子(wp_head, add_shortcode等)函数。任何人都可以建议我一个简单方便的方法来调试一个WordPress插件或者有任何其他的方法来开发一个WordPress插件很容易。提前感谢。

使用PHP调试器可能很好,但它也可能有点像"跟着弹跳的球"。为简单起见,启用WP_DEBUG和WP_DEBUG_LOG(参见WordPress中的调试),并使用error_log()函数将有用的信息转储到wp-content/debug.log文件中。

我倾向于用类方法、函数或包含文件名作为日志语句的前缀,这样我就知道它们来自哪里。例如

error_log(__METHOD__ . ": value = $value");
error_log(__FUNCTION__ . "'n" . print_r($_POST, 1));
ob_start();
var_dump($collection);
error_log(basename(__FILE__) . "'n" . ob_get_clean());

Debug Bar插件也可以非常方便,特别是与一些可用的附加组件。

对于调试,我通常使用标准的php函数来检查变量,您知道,var_exportprint_r。如果我有一个更难以检测的错误,那么我使用Xdebug: http://xdebug.org/.

另外,在Wordpress中你可以使用这个插件来记录变量的内容:

  • http://wordpress.org/extend/plugins/wp-debug-logger/
  • http://wordpress.org/extend/plugins/wp-log-in-browser/

与wp-config.php文件中的调试模式和调试登录相结合,调试栏插件是一个很好的开始。

调试栏

在WordPress中,debug和debuglog设置

其他可能对你有用的东西:

1)在代码中查找废弃函数的插件,例如Log deprecated Calls或Log deprecated notice。

设置WP_DEBUG常量将在PHP日志中提供有用的信息。

最好的方法是下载插件查询监视器

然后添加一行

'do_action('qm/debug', <your_data>);

这将记录日志部分中的所有内容。要打开查询监视器,只需进入管理面板,点击顶部管理栏,你会发现一些指标,如速度,只需点击它。