提问人:Michael Lynch 提问时间:6/20/2014 最后编辑:MaximeMichael Lynch 更新时间:11/17/2023 访问量:50141
如何在 WordPress 中使用 error_log()?
How can I use error_log() with WordPress?
问:
我正在尝试在我正在构建的自定义 WordPress 插件中使用,但由于某种原因,我不能。error_log()
当我使用我的网站时,它只是中断,但我没有看到任何错误。error_log()
debug.log
我在我的文件中设置了调试,如下所示:wp_config.php
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
Stranegly,如果我在我的主题中使用,网站不会中断,但也不会输出任何内容。error_log()
debug.log
我需要做什么才能在我的 WordPress 插件和主题中使用?error_log()
我正在使用 WordPress 3.9.1。
答:
根据法典,默认情况下应设置为 true,但情况似乎并非如此。WP_DEBUG_DISPLAY
添加到修复错误日志记录。define('WP_DEBUG_DISPLAY', true);
wp_config.php
设置为从浏览器中删除错误,但允许它们在日志中输出。WP_DEBUG_DISPLAY
false
Wordpress 似乎需要将错误输出到日志中,无论您将其设置为 BE 还是 .define('WP_DEBUG_DISPLAY');
true
false
我有同样的问题。对我来说,注释掉这句话很有帮助。
define( 'WP_DEBUG_LOG', true );
更新 2019
启用调试
只需将以下代码添加到以下代码即可启用调试:wp-config.php
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
您的文件夹中将生成一个文件。debug.log
wp-content
在生产环境中的使用
如果要在不在前端打印错误的情况下记录错误,请添加以下行:
define( 'WP_DEBUG_DISPLAY', false );
这在生产环境中非常有用,因为页面访问者将无法看到您的日志。
打印错误
现在,您可以使用以下函数写入日志:error_log
error_log( 'Hello World!' );
或者使用以下方法漂亮地打印您的输出:print_r
error_log( print_r( 'Hello World!', true ) );
专业提示:如果您使用的是 bash,则可以使用
tail -f wp-content/debug.log
您可以启用 WordPress 日志记录,将其添加到:wp-config.php
// Enable WP_DEBUG mode
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
您可以使用 PHP 提供的 error_log()
函数写入日志文件。
此外,还可以在文件中添加以下代码片段。这对于调试您的 WordPress 网站非常有用。wp-config.php
function write_log($log) {
if (true === WP_DEBUG) {
if (is_array($log) || is_object($log)) {
error_log(print_r($log, true));
} else {
error_log($log);
}
}
}
write_log('THIS IS THE START OF MY CUSTOM DEBUG');
//i can log data like objects
write_log($whatever_you_want_to_log);
评论