讲解WordPress开发中一些常用的debug技巧
在开发过程中,调试代码是非常重要的工作,而掌握一些 wordpress 的调试技巧,可以更好的进行调试。比如,在本地开发环境,你可能需要把全部的代码警告信息全部输出出来,方便修改代码不合理的地方。
本文将讲解 wordpress 的所有调试方法,如果你是开发者,一定要掌握这些技巧,可以大大提高效率。
调试模式的开启需要在根目录的 wp-config.php 文件添加一些常量,所以下边介绍的所有代码都添加到根目录的 wp-config.php 文件。
wp_debug
wp_debug 是一个 wordpress 的常量,把他设为 true 之后,wordpress 会进入开发者模式,它会把所有有关开发的提示都输出到屏幕上。
我非常建议本地的开发环境里启用 wp_debug,方便开发。
//启用开发者模式 define( 'wp_debug', true );
wp_debug_log
如果你想把 wordpress 运行中出现的错误全部记录下来,可以开启 wp_debug_log,开启后,所有的错误都会被记录下来,存储到 wp-content/debug.log 文件。
记录错误的前提是需要开启 wp_debug 模式,只有开启 wp_debug 才会产生错误。
//开启错误记录 define( 'wp_debug_log', true );
wp_debug_display
如果你想把 wp_debug 模式产生的错误只通过 wp_debug_log 记录而不显示在屏幕上,可以在开启 wp_debug_log 和 wp_debug 的时候再开启 wp_debug_display。
//阻止错误显示在屏幕上 define( 'wp_debug_display', true ); script_debug
默认情况下,wordpress 后台会使用压缩并合并后的 js 和 css 文件。
有时候为了调试,我们可能不想让后台使用压缩的 css 和 js 文件,这时可以把 script_debug 设置成 true。
//禁用压缩的 css 和 js 文件 define( 'script_debug', true );
savequeries
如果你要优化数据库查询次数,savequeries 是一个非常重要的东西,把 savequeries 设为 true,wordpress 会记录每一次数据库查询的 sql 语句和花费的时间。
//记录数据库查询 define( 'savequeries', true );
开启记录之后,可以使用 $wpdb 的 queries 变量来获取所有数据查询,把下边的代码放到主题的 footer.php 文件里即可看到所有数据库查询。
<pre><?php var_dump( $globals['wpdb']->queries ); ?></pre>