問題描述
像標題中提到的,我認為這是迄今為止 Automattic 或 Wordpress 團隊無法解決的一個問題,無論將來 Wordpress 將會發布什麼版本。在這個問題上,我正在關注死亡的白色屏幕,每當我想激活某些插件,我都會得到。我正在開發一個網站,要求我使用 30 個插件。是的,有人會説這是一個網站太多的插件,難怪我會得到白色的屏幕。不過嘿,這是 Wordpress,是讓 Wordpress 成為最受歡迎的博客平台的原因之一是因為可以讓您在更短的時間內實現您的目標。對於那些誰在 php + wp 開發專家,你們可以説黑客 wp 比使用大量的插件,就像我在做,但嘿,大多數 wp 用户不是 php guru 。大多數是像我這樣的普通用户,甚至只是知道如何安裝和使用他們可用的。
到目前為止,這裏是我們在得到白色屏幕死亡 (WSOD) 時所做的常見步驟。
-
重命名 wp-content /plugins 文件夾名稱,如 wp-content /plugins-temp,這將停用所有插件
-
像我一樣,我喜歡將個人插件文件夾名稱重命名為 wp-content /plugins /akismet 到 wp-content /plugins /akismet-temp
-
之後,重新啓動所有的插件一個接一個,所以我們可以知道哪個插件是罪魁禍首
-
檢查插件文件末尾是否有空的空格,尤其是在 php 結束標籤之後?> 確保標籤後沒有額外的空間。確保檢查主題 functions.php 文件 (如果有) 或插件文件。
-
增加 wordpress 的內存分配
通常,您的網站將恢復正常。但是這還是不能解決這個問題。
對我來説,這對我來説非常討厭,特別是第 3 步。我們怎麼知道哪個插件是罪魁禍首?首先,我認為第 3 步真的是一個事實,但現在我覺得它的謊言。為什麼?
像現在一樣,突然之後,我激活了 25 個插件,我不能重新啓動的插件之一是 Akismet 。什麼? Akismet 在?是的,這個插件由 WP 團隊自己開發。我知道上面的步驟 3 是一個謊言,因為如果我先激活 Akismet,Akismet 被激活成功。完全沒問題。
所以現在的問題是插件之間的插件兼容性。我如何作為普通用户可以識別哪個插件是不友好的什麼插件??? 如果我使用 30 個插件,一個插件的幾個概率與每個插件不兼容?我該怎麼知道應該先啓動哪個插件,以免 WSOD 出現?
如果有錯誤,那麼也許我可以有一個線索,但它是一個純白色的屏幕。我無能為力 wordpress 中的這種插件真的是一個未解決的問題,這使我真的很壓力。
任何人知道如何解決這個問題?至少知道如何通過 mysql 激活插件?
最佳解決方案
要讓 WordPress 顯示錯誤,請編輯 wp-config.php 文件
define( 'WP_DEBUG', true );
默認情況下,此選項設置為 false,並應位於文件的底部。這將允許您查看正在生成哪些錯誤。
另外,文件末尾的空格幾乎不會導致 WSOD; 這就是導致 Feed 中 「標題已發送」 錯誤的原因。
鑑於您的描述,我只能想到為什麼 Akismet 引起錯誤的兩種可能性:
-
你超過了內存限制
-
另一個插件可能正在使用 Akismet 使用的功能,導致 「無法重新聲明 user-defined 功能」 錯誤
嘗試打開 WP_DEBUG,如果您有任何問題,請返回。
次佳解決方案
我有幾次白屏死亡。如果您嘗試禁用您的插件,並且不起作用,請轉到您的主題。測試與二十十主題。如果問題消失了,那麼你的主題是錯誤的。
在您的主題中尋找問題:
未轉義的字符可能會導致問題。更改 @ @
在空白空間的 function.php 結尾會引起問題。
沒有發現從 WP.org 下載最新版本,並覆蓋除了 wp-content 文件夾之外的所有文件夾。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。