問題描述

我正在開發一個外掛,但在啟用短語期間,我經常面臨錯誤。然而,沒有簡單的方法來顯示錯誤訊息,因為回顯的東西會導致’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 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。