问题描述
我正在开发一个插件,但在激活短语期间,我经常面临错误。然而,没有简单的方法来显示错误消息,因为回显的东西会导致’unexpacted output’ 错误。我尝试了 admin_message 钩子,但它不起作用。如果激活的某些阶段出现故障,我该如何提醒用户?
最佳解决方案
为了测试目的,您可以使用日志系统 (php_error.log):
error_log('Plugin activated', 0);
// Check for DB table existance
if(!$this->hasDBTable()){
error_log('Database not present', 0);
if($this->createCELabelsDBTables()){
error_log('Database was created.', 0);
} else {
error_log('Error creating the CE Labels Plugin db tables!', 0);
}
} else {
error_log('Database OK', 0);
}
为了向用户输出错误,「Headers already sent」 错误,您可以使用 php 函数 trigger_error:
trigger_error('PLUGIN OK',E_USER_ERROR);
WordPress 必须始终为 E_USER_ERROR,否则不会显示该消息。
我知道 error_log 使用完美,但 trigger_error 显示必须有信息。尝试一下,看看自己:)
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。