首頁  >  文章  >  CMS教程  >  WordPress 外掛、主題與PHP8的兼容性

WordPress 外掛、主題與PHP8的兼容性

藏色散人
藏色散人轉載
2020-12-14 14:48:574031瀏覽

以下由WordPress教學欄位來介紹WordPress 外掛、主題與PHP8的相容性,希望對需要的朋友有幫助!

WordPress 外掛、主題與PHP8的兼容性

關於WordPress 外掛程式、主題與PHP 8的兼容性

PHP8 於2020年11月26日發布,WordPress核心撰稿人喬納森·德羅西耶斯(Jonathan Desrosiers)在《使WordPress核心》部落格上發表了一篇關於PHP8對WordPress影響的文章,從文中可以確認Wordpress目前的版本,不能保證在PHP8中完美運行,特別是眾多的主題和外掛相容性更不可預測,即將於2020年12月8日發布的Wordpress 5.6也只是PHP8的過渡版本,所以目前不要嘗試在自己的WordPress網站上升級使用PHP8。

相關文章推薦:《PHP8正式發布了

#以下是機翻。

PHP 8 推出

PHP 8是我們最喜歡的腳本語言的下一個主要更新。雖然先前的 PHP 版本對 WordPress 生態系統沒有太大的負面影響,但此更新有一些重大變更可能會影響向後相容性。還應該注意的是,PHP 7.x 中棄用的許多功能現在將在 PHP 8 中刪除。

WordPress 核心的狀態

在他的貼文中,德羅西耶斯強調了為使核心軟體保持最新而進行的工作。 "WordPress Core 的目標是在 5.6 版本中與 PHP 8.0 相容(目前定於2020年12月8日),」他寫道。

但是,這並不意味著在 WordPress 5.6 發佈時升級到 PHP 8 是安全的。 WordPress 很少只運行自己,通常依賴至少一個主題和外掛程式集合作為部落格或網站。因此,他指出,"PHP 8 在更廣泛的生態系統(外掛程式、主題等)中支援的狀態是不可能知道的。因此,WordPress 5.6 應被視為與PHP 8 的"測試版相容"。

這意味著,本質上,在大多數主要的主題和外掛程式是PHP 8相容之前,WordPress不能被認為是完全相容的。

了解PHP 8 如何影響您的外掛程式或主題

像Yoast這樣的公司已經為此準備了一段時間了。10月下旬,Yoast CTO Omar Reis與同行的撰稿人朱麗葉·林德斯·福爾默( Juliette Reinders Folmer)一起,為PHPCS編寫了WordPress編碼標準嗅探器的維護者,Yoast DevOps經理ErreGroen,編制並發表了一份全面的WordPress/PHP 8兼容性報告。

雖然我強烈強烈建議你花時間通讀整個報告,但它確實概述了PHP 8升級對大型WordPress網站,尤其是插件和主題生態系統產生如此巨大影響的主要原因。

但是,PHP 7.* 版本看到的棄用量比以前版本的PHP 大得多。PHP 5.6 到PHP 7 是一個相對簡單的遷移,從7.x 到8 可能會非常痛苦,尤其是對於非常古老的程式碼庫,如WordPress 和許多可用的插件。對於類型良好的程式碼庫或程式碼庫,它們一直保持最新的PHP 版本,因此沒有問題。

作為一些插件的維護者,一些插件建立在八年前的程式碼之上,令人擔憂的是,這種升級可能會導致網站中斷。

如何做好準備

#我問里斯和福爾默插件和主題開發人員可以做什麼來準備,他們分享了一些指針。

首先,開發人員應該告知自己PHP 8 中的變化:閱讀有關PHP 8的Make 帖子,閱讀Yoast PHP8 兼容性報告,閱讀PHP 手冊中的"從PHP 7.4 遷移到PHP 8.0"部分,並可能透過閱讀PHP 8分支中的升級文件和PHP 8 的RFC來更深入地挖掘。

一些可用的工具可用於協助尋找不相容:

  • 透過指令(確保遍數所有檔案)或使用PHP並行林特在PHP8上執行PHP絨板。php -l

  • 在程式碼上運行PHP相容:應該注意,幾乎所有PHP 8 相關嗅覺都位於PHP 相容版本10.0.0 的尚未發布版本中,因此人們需要使用分支或透過Composer 進行當前操作,直到版本10.0.0 發布。 developdev-develop

  • 在 PHP 8 上為外掛程式或主題執行單元/整合測試,並修正任何出現錯誤的問題。這通常意味著測試套件首先需要與 PHPUnit 9.3 相容。 PHPUnit Polyfills 套件和WP 測試 Utils套件(都在 Yoast GitHub 組織下發布)可以幫助實現此目的。同樣重要的是要注意,要使這種測試具有可靠的性能,需要有相當大的測試覆蓋率。

  • 運行 WordPress單元測試和WordPress e2e測試,啟動插件,並修復出現的任何問題。

  • 檢查該測試的(嚴格)程式碼覆蓋率是否足夠高,如果沒有,請添加更多測試,確保涵蓋快樂和不愉快的路徑。

  • 如果沒有測試,請手動測試所有內容,尤其關注"不愉快路徑",並期望在可預見的將來收到 bug 報告。同時,這可能是研究為外掛程式或主題實施單元/整合測試的利向。

還有時間, 但它已經用完了

#正如Desrosiers在"製造"帖子中指出的,WordPress只正式的目標是在12月初5.6發佈時準備好PHP8。這可能意味著,許多以 WordPress 為重點的託管公司只會考慮在 WordPress 核心相容後向其客戶提供升級。因此,作為外掛程式和主題開發人員,我們有一些時間來測試我們的產品,讓他們做好準備,但視窗正在快速關閉。

幸運的是,最新的知識和工具就在那裡。我們只需要把它們付諸行動。

以上是WordPress 外掛、主題與PHP8的兼容性的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:zmingcx.com。如有侵權,請聯絡admin@php.cn刪除