問題描述

有沒有一些全球性的 functions.php 文件,適用於任何主題?

問題在這裏:

當我在任何主題中更改 functions.php 文件時,我需要注意兩個更改:首先,我需要處理該主題的更新。第二,我需要照顧更改網站的主題。

所以,而不是在主題的 functions.php 中進行更改,是否可以在一些獨立於任何主題的 functions.php 文件中進行更改?

最佳解決方案

主題與 non-theme 代碼之間的區別是組織而不是技術。任何有效的代碼有助於生成環境,無論從哪裏加載。

有多個地方加載了代碼,這些地方不是 WordPress 核心的一部分:

  • wp-config.php 配置文件

  • 活躍主題 (及其父母為兒童主題)

  • 活動插件

  • 必須使用插件

  • drop-ins(這些有些先進,服務於非常具體的用途)

您自己的代碼的典型地方,不應該是主題的一部分,是創建一個插件。其他方法沒有通用案例的好處,但是沒有通過管理區域的界面 (通過管理區域管理) 和技術 (激活/停用/卸載事件) 普通插件的便利。

次佳解決方案

那麼這是一個真正的問題,許多人在改變主題的時候面對它,但是有一個簡單的解決方案。

將該功能添加到不是 functions.php 的新頁面,併為其提供一個唯一的名稱,例如 yousitename + timestamp 或任何您想要的,但唯一的同名的創建文件夾將其壓縮並將其上傳為插件,因此它將一直工作,直到禁用它。

要了解哪個插件是什麼不要錯過給這個插件的名稱,如:

/*
Plugin Name: XYZ
*/

第三種解決方案

作為 @MBTheDeveloper 答案的補充。

其他選擇將是:

  1. 為當前主題創建一個子主題,並使用這個主題的 functions.php 文件 (這是”best practice”) 。

  2. 在您的主題功能 php 文件中使用 include,並加載包含您的自定義代碼的 custom-function.php 文件。

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。