WordPress 主题与插件的调试:开启 WP_DEBUG 之后要看什么

· wordpress · 阅读 13
摘要

白屏排查的第一步永远是打开调试,但打开之后满屏提示,还得知道哪些是真正要处理的。wp-config.php 里的四项开关define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); defi

白屏排查的第一步永远是打开调试,但打开之后满屏提示,还得知道哪些是真正要处理的。

wp-config.php 里的四项开关

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
define('SCRIPT_DEBUG', true);

同时开启 LOG 和关闭 DISPLAY 是最实用的组合:错误写进 wp-content/debug.log,页面上不显示,避免访客看到路径信息。

哪些是 Notice,哪些是致命错

  • Notice / Warning:多半是用了未定义变量,不影响功能但该修
  • Deprecated:调用了即将废弃的函数,暂时能跑,升级版本后会挂
  • Fatal error:直接白屏,必须立刻处理

很多人看到满屏 Deprecated 就慌了,其实那是主题在上个版本写的,只要没触发 Fatal 就不影响使用。

主题开发时的专项检查

在 functions.php 顶部加一句:

if (!defined('WP_DEBUG')) { define('WP_DEBUG', true); }

这意味着交到客户手里之前一定要删掉,否则把错误显示开关带给了生产环境。

B 键触发的那条提示

调试开启后会看到一条“已启用调试模式”,它本身不是错误,提醒你当前环境不适合对公网开放。

最后一步

修完一批错误,记得加载 wp-content/debug.log 看一眼有没有新的报错累积。日志不会自动清空,文件会越来越大。