如何将error_log() 与 WordPress 一起使用?更新 2019

2022-08-30 16:06:37

我正在尝试在我正在构建的自定义WordPress插件中使用,但由于某种原因,我不能。error_log()

当我使用我的网站时,只是中断,但我没有看到任何错误。error_log()debug.log

我在我的文件中设置调试,如下所示:wp_config.php

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);

不幸的是,如果我在我的主题中使用,该网站不会中断,但不会输出任何内容。error_log()debug.log

我需要做什么才能在我的WordPress插件和主题中使用?error_log()

我使用的是WordPress 3.9.1。


答案 1

更新 2019


启用调试

只需将以下代码添加到 :wp-config.php

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );

您的文件夹中将生成一个文件。debug.logwp-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


答案 2

根据《法典》,默认情况下应设置为 true,但情况似乎并非如此。WP_DEBUG_DISPLAY

添加以修复错误日志记录。define('WP_DEBUG_DISPLAY', true);wp_config.php

设置为从浏览器中删除错误,但允许在日志中输出错误。WP_DEBUG_DISPLAYfalse

似乎Wordpress需要将错误输出到日志中,无论您将其设置为还是。define('WP_DEBUG_DISPLAY');truefalse


推荐