什么是WP_DEBUG?
WordPress 中的 WP_DEBUG 是一个简单的全局永久变量,也被称为PHP常量,在 WordPress 2.3.1 中引入,它允许开发人员在开发和测试 WordPress 主题或插件时捕获和查看 PHP 错误和警告。开启之后PHP错误消息会到网站页面或日志文件中,以便开发人员可以轻松地识别和修复问题。
默认情况下,WP_DEBUG调试模式是关闭的。
WP_DEBUG是从WordPress的配置文件启动的,就是我们经常会用到的wp-config.php文件。
怎么启用WP_DEBUG?
启用WP_DEBUG其实很简单,只需要去到我们的wp_config.php文件,找到:
define ( 'WP_DEBUG', false);
这个默认是关闭的(false),要启用WP_DEBUG只需要改成true:
define ( 'WP_DEBUG', true);
按照以上的方法其实WP_DEBUG就在你网站上开启了,是不是很简单!
一旦WP_DEBUG被激活,你的网页将显示调试信息和PHP警告。这些信息可以帮助我们发现代码中的问题。
LOG记录WP_DEBUG错误
如果你想要将错误和警告保存到一个日志文件中,以便以后检查,你只需要激活WP_DEBUG_LOG功能。操作和开启WP_DEBUG类似也是设置为true之后就会把所有错误和消息保存到一个名为debug.log的文件中,该文件位于/wp-content/文件夹中。
只需要以下内容添加到wp-config.php文件中:
define ( 'WP_DEBUG_LOG', true);
开启LOG日志文件之后,在网站上显示报错其实就没有什么必要了,我们可以隐藏它。开启LOG日志后可能有网站安全问题,这个点一定要重视一下。
WP_DEBUG_DISPLAY
如果我们已经有一个保存错误和消息的日志文件,那么我们就可以避免它们显示在生成它们的页面上。解决这个问题,我们需要激活WP_DEBUG_DISPLAY的PHP常量。这样就不会在你的站点上显示任何消息或错误,仅仅是保存在我们刚刚上面建的文件里。
开启它也是非常简单,照样是在wp-config.php文件中添加一行即可:
define ( 'WP_DEBUG_DISPLAY', false);
完全关闭WP_DEBUG
按理来说只要单纯的把WP_DEBUG改成false就关闭了这个功能,不过有时候因为种种原因并不会成功关。这种情况,可以用以下代码试试:
ini_set('log_errors','On');
ini_set('display_errors','Off');
ini_set('error_reporting', E_ALL );
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
开启WP_DEBUG功能总结
如果你想要启用调试,保存消息到log文件但在网站上不显示它们,需要在wp-config.php中添加以下行:
// 开启 WP_DEBUG
define ( 'WP_DEBUG', true);
// 保存报错到 /wp-content/debug.log
define ( 'WP_DEBUG_LOG', true);
// 页面报错隐藏
define ( 'WP_DEBUG_DISPLAY', false);