可以到wp-config.php中,添加对应的调试的配置选项:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
/** * 开发者专用:WordPress 调试模式。 * * 将这个值改为“true”,WordPress 将显示所有用于开发的提示。 * 强烈建议插件开发者在开发环境中启用本功能。 */ //define('WP_DEBUG', false); define( 'WP_DEBUG' , true); //define('WP_DEBUG_DISPLAY', false); define( 'WP_DEBUG_DISPLAY' , true); // Enable Debug logging to the /wp-content/debug.log file define( 'WP_DEBUG_LOG' , true); |
2.(当无法通过print或echo显示输出的调试信息时)把调试信息写入到log文件中
但是,对于很多想要在wordpress后台执行的一些代码,比如
wp-includes\class-wp-xmlrpc-server.php
会在通过客户端(wlw)发布帖子时被调用,此时,在其中添加
print或echo的话,代码是可以执行,但是输出的结果,却不像是html网页一样可以查看,其输出的内容,会被冲掉的。
所以也就无法查看到输出的调试信息了。
无法实现调试了。
最后是自己想到了,对于前面打开
define(‘WP_DEBUG’, true);
和
define(‘WP_DEBUG_LOG’, true);
后,就可以有log文件:
/wp-content/debug.log
了,所以,应该去找找其他php代码中,是如何把调试信息写入到log文件中的,然后参考一下即可实现自己的调试输出了。
不过,很是无语的,对于在wordpress中,如何输入信息到log文件中,结果却是找了很长很长的时间,最后才参考:
Simple Debugging with WordPress
终于找到相关的函数error_log,试了试:
1
2
|
function mw_newMediaObject( $args ) { ... |
1
2
|
error_log ( $data [ 'name' ]); $name = $this ->translate_sanitize_file_name( $data [ 'name' ] ); |
1
|
} |
得到
\wp-content\debug.log
中的输出为:
[26-Oct-2012 08:06:43] 0046001feb0d.png
【注意事项】
1.之前在:
实现WLW上传图片到Wordpress过程中,自动翻译文件名
遇到过,当打开了debug:
define(‘WP_DEBUG’, true);
后,结果导致wlw中发布带附件(图片,文件名为中文的)帖子时,出现错误: