問題描述
我試圖擴展另一個插件的功能。我需要從數據庫中獲得數據,使用與原始插件不同的方式。 (在這種情況下,WPMUDev 類別和列表插件) 。法典有什麼東西嗎如何創建可以使用其他插件功能的插件?可以擴展它們並構建父節點的功能嗎?我不知道這些插件是使用類還是直接使用。
我只是試圖從插件獲取數據到一個側邊欄小工具 (在表單選項元素),但最終我將使用這個內容區域以及使用自定義短碼。現在我只需要一個開始的地方。
最佳解決方案
是的,可以創建一個擴展另一個插件的插件。以下是有關您如何瞭解的一些想法:
-
插件可以像 WordPress 核心一樣設置自己的動作和過濾鈎子 (使用
do_action和apply_filter功能) 。如果您要定位的插件執行此操作,則可以使用這些掛鈎來更改功能。 -
如果一個插件使用了 object-oriented 結構,你可以擴展類並構建在原始插件上。
-
您可以通過原始插件讀取存儲在數據庫中的數據,並在插件代碼中使用它。
-
檢查插件是否處於活動狀態並加載後,您可以調用所需的原始插件的任何函數 (見下文) 。只要知道該函數除了返回值之外可能具有的任何效果。
您需要檢查原始插件是否被激活。您可以使用 is_plugin_active 功能; 但是,這隻適用於管理頁面。或者,您可以使用 function_exists 或 class_exists 來檢查原始插件中的特定功能或類是否可用,這將告訴您它正在運行。
請記住,只要原始插件更新,您需要使用新版本測試您的插件,以查找可能與插件相沖突的任何新內容。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。