問題描述

我試圖擴展另一個插件的功能。我需要從數據庫中獲得數據,使用與原始插件不同的方式。 (在這種情況下,WPMUDev 類別和列表插件) 。法典有什麼東西嗎如何創建可以使用其他插件功能的插件?可以擴展它們並構建父節點的功能嗎?我不知道這些插件是使用類還是直接使用。

我只是試圖從插件獲取數據到一個側邊欄小工具 (在表單選項元素),但最終我將使用這個內容區域以及使用自定義短碼。現在我只需要一個開始的地方。

最佳解決方案

是的,可以創建一個擴展另一個插件的插件。以下是有關您如何瞭解的一些想法:

  1. 插件可以像 WordPress 核心一樣設置自己的動作和過濾鈎子 (使用 do_actionapply_filter 功能) 。如果您要定位的插件執行此操作,則可以使用這些掛鈎來更改功能。

  2. 如果一個插件使用了 object-oriented 結構,你可以擴展類並構建在原始插件上。

  3. 您可以通過原始插件讀取存儲在數據庫中的數據,並在插件代碼中使用它。

  4. 檢查插件是否處於活動狀態並加載後,您可以調用所需的原始插​​件的任何函數 (見下文) 。只要知道該函數除了返回值之外可能具有的任何效果。

您需要檢查原始插件是否被激活。您可以使用 is_plugin_active 功能; 但是,這隻適用於管理頁面。或者,您可以使用 function_existsclass_exists 來檢查原始插件中的特定功能或類是否可用,這將告訴您它正在運行。

請記住,只要原始插件更新,您需要使用新版本測試您的插件,以查找可能與插件相沖突的任何新內容。

參考文獻

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