建立自訂 WordPress 外掛:逐步指南
已發表: 2023-12-01WordPress 之所以受歡迎,部分原因在於它的開源特性,讓開發人員可以創建擴展其功能的外掛程式。 目前有超過 55,000 個可用插件,但您可能有興趣學習如何建立自己的插件。
好消息是,即使您只有一些編碼知識,WordPress 也可以相對輕鬆地建立基本外掛程式。 透過開發插件,您可以為 WordPress 網站添加超出可用功能的自訂功能和功能。
在本文中,我們將深入了解 WordPress 外掛是什麼,並提供開發第一個外掛程式的逐步指南。 我們將介紹建立一個簡單外掛程式的編碼基礎知識,該外掛程式可以為您的 WordPress 網站添加自訂功能和功能。
建立 WordPress 外掛需要什麼
要建立 WordPress 插件,您需要幾個關鍵部分:
需要使用 Notepad++ 或 Atom 等文字編輯器來編寫插件程式碼本身。 您需要將編輯器連接到託管帳戶的 FTP(檔案傳輸協定)伺服器,以便能夠直接修改檔案。 FileZilla 和 WinSCP 等 FTP 工具可以簡化將外掛程式檔案上傳到 WordPress 網站的過程。
此外,您還需要安裝有效的 WordPress,最好更新到最新版本。 如果您停用了自動更新,則可以手動更新 WordPress 核心文件,但請務必先備份您的網站以防止資料遺失。 另一種選擇是在本機安裝 WordPress 以開發外掛程式而不影響即時網站。
建立插件時也建議具備一些基本的 PHP 知識。 您需要編寫自訂 PHP 函數並利用現有的 WordPress 函數。 至少,熟悉 PHP 約定和文件結構是有用的。
WordPress 外掛的類型
WordPress 外掛可以執行多種功能,但它們都用於擴展 WordPress 網站的功能。 一些常見類型的插件包括:
- 維護插件處理安全性、速度最佳化、備份和其他網站管理任務。
- 用於 SEO、社交媒體整合、電子商務等的行銷和銷售外掛程式。
- 內容外掛程式可讓您建立自訂貼文類型、小工具、短程式碼、表單、圖庫和影片元素。
- API 外掛程式可利用 WordPress REST API 或整合 Google 地圖等外部服務。
- 新增社群網路功能的社群插件。
還有許多其他插件類別。 要了解可能性,請瀏覽官方 WordPress 外掛目錄和不同的 WordPress 外掛程式市場。
什麼是 WordPress 掛鉤?
WordPress 外掛程式使用鉤子與核心程式碼整合。 鉤子主要有兩種類型:
動作鉤子在特定點執行函數。 開發人員可以將自訂邏輯附加到操作掛鉤以執行其他任務。 例如,wp_head 掛鉤在 head 標記之前運行程式碼。
過濾器掛鉤修改函數傳回的資料。 外掛程式可以透過自訂邏輯過濾值來更改值。 例如,the_content 過濾器會變更貼文內容。
鉤子是上下文相關的——它們只在相關的地方運行。 WordPress 程式碼參考列出了可用的掛鉤。
若要使用掛鉤,請使用add_action()
或add_filter()
新增回調函數。 參數指定要附加的掛鉤名稱和函數。
add_action('wp_head', 'function_name');
可選參數控制順序執行的優先權和接受參數的數量。
刪除鉤子類似於使用remove_action()和remove_filter()。 定義時引用原始優先權值。
現在讓我們來看一些例子:
這透過掛鉤 wp_footer 在所有頁面的頁腳後面顯示文字:
<?php
/* Plugin Name: Footer Text */
function footerText(){
echo "<p>My footer text</p>";
}
add_action('wp_footer', 'footerText');
這透過掛鉤get_the_excerpt():
<?php
/* Plugin Name: Excerpt Changes */
function excerptText($text){
return "See the excerpt below: ". $text;
}
add_filter('get_the_excerpt', 'excerptText');
在臨時網站上測試插件可以避免破壞您的即時網站。 本機安裝 WordPress 或使用暫存外掛程式。
製作 WordPress 外掛的步驟
第 1 步:設定初始插件檔案結構
創建插件的第一步是建立一個新資料夾來包含其檔案。 為資料夾選擇一個唯一的描述性名稱。 檢查 wp-content/plugins/ 中現有的插件資料夾以確保它尚未使用。
使用 FTP 用戶端連接到您的託管帳戶,這使上傳更加容易。 導覽至 WordPress 主目錄,然後導覽至 wp-content -> 外掛程式。 在這裡建立一個名為 my-new-plugin 的新資料夾來儲存插件。
按功能組織插件資料夾中的檔案是一種很好的做法。 例如,將 CSS、PHP 和 JavaScript 檔案保存在它們自己的子目錄中。 這使得插件開發時保持整潔,從而在需要時更容易找到特定文件。
為插件添加新的 PHP、CSS、JS 等檔案時,請將它們儲存在適當的資料夾中。 從長遠來看,從一開始就維護這種結構可以使文件管理變得更加簡單。
第 2 步:建立主插件文件
核心外掛檔案包含 WordPress 在外掛程式清單中識別它並允許啟動的資訊。
在您已建立的插件資料夾中建立一個名為 my-first-plugin.php 的新 PHP 檔案。 這將是主文件。
WordPress 需要標頭註解來讀取名稱、描述和作者等元資料以進行顯示。
使用文字編輯器將此程式碼新增至 my-first-plugin.php :
<?php
/*
Plugin Name: My First Plugin
Description: This is my first plugin! It adds a new menu link!
Author: Your Name
*/
此處不需要結束?>
標記。 PHP 手冊解釋了原因。
儲存文件,然後前往 WordPress 儀表板中的外掛程式頁面。 如果它有效,您將在清單中看到“我的第一個插件”。
現在,初始插件檔案已設定完畢。 接下來,我們可以啟動它並開始添加功能。
第 3 步:新增外掛功能
為檔案、函數和變數提供唯一的前綴(例如“mfp”)以避免衝突。
建立一個「includes」資料夾來儲存支援檔案。 在這裡建立 mfp-functions.php 來保存函數。
在 my-first-plugin.php 中,使用 require_once 包含 mfp-functions.php,以便插件僅在存在時運行:
require_once plugin_dir_path(__FILE__) . 'includes/mfp-functions.php';
在 mfp-functions.php 中,建立一個使用 admin_menu 掛鉤新增選單項目的函數:
add_action('admin_menu', 'mfp_Add_My_Admin_Link');
function mfp_Add_My_Admin_Link() {
// Code to add menu item
}
使用多行註解來描述功能。 對以後的調試很有幫助。
mfp_Add_My_Admin_Link() uses add_menu_page()
。 參數:
- 頁面標題
- 選單文字
- 能力要求
- 要載入的文件
這會在 admin_menu 觸發時新增選單。 上傳 mfp-functions.php 以啟用它。
接下來,我們將建立它載入的頁面檔案。
第 4 步:新增外掛程式的管理頁面
編寫啟用插件功能的函數後,下一步是建立選單連結將指向的管理頁面。 在您已建立的 Includes 資料夾中建立一個名為 mfp-first-acp-page.php 的新 PHP 檔案。 然後加入以下程式碼:
<div class="wrap">
<h1>Hello!</h1>
<p>This is the first page for my plugin</p>
</div>
在製作自訂管理頁面時,WordPress 建議使用「wrap」類別將 HTML 包裝在<div>
標籤中。 這樣做可以確保您的內容出現在正確的位置並避免混亂。
頁面檔案完成後,請前往 WordPress 儀表板中的外掛程式區域並啟動新外掛程式。 如果成功,您的第一個插件的管理選單連結現在將在選單底部可見。
第 5 步:在即時 WordPress 網站上安裝插件
如果您在臨時 WordPress 網站上開發了該插件,則需要按照以下步驟將其安裝在即時生產網站上:
- 在 FileZilla 中,右鍵單擊 my-new-plugin 資料夾並選擇“下載”。 將檔案壓縮為 .ZIP 檔案。
- 前往 WordPress 儀表板中的「外掛程式」選單,然後按一下「新增外掛程式」。
- 選擇上傳外掛程式並選擇包含您的外掛程式的 .ZIP 檔案。
- 按一下立即安裝開始安裝程序。
開發 WordPress 外掛的最佳實踐
隨著您的網站的發展,您可能需要更新插件程式碼以獲取新功能和安全性修補程式。 從一開始就遵循插件開發的最佳實踐,為您自己和其他開發人員簡化此流程。
此外,研究編碼良好的插件範例以獲取靈感。 分析他們的原始程式碼組織、資料夾結構以及建立您自己的 WordPress 外掛程式時要應用的其他技術。
以下是編碼和開發高品質自訂 WordPress 外掛程式的重要建議:
- 首先在臨時 WordPress 環境中建立和測試,以避免錯誤代碼破壞即時網站。
- 按功能和語言在子資料夾中邏輯組織文件以保持井井有條。
- 使用唯一的前綴命名所有檔案、資料夾和元素,以防止衝突。
- 註釋函數以記錄它們所做的事情,以便以後更輕鬆地進行偵錯。
- 為許多使用者使用的複雜插件建立文件。
- 使用版本控制來追蹤程式碼變更並防止更新衝突。
- 協作時遵循 Codex 中的 WordPress 編碼標準。
- 在開發過程中使用 WP_DEBUG 或調試工具儘早發現錯誤。
包起來
建立自訂外掛程式是為 WordPress 網站添加現有外掛程式不提供的功能的一種方法。 插件可以很簡單,只需進行一些細微的調整,也可以很複雜,需要修改整個網站。
與任何技能一樣,需要練習才能熟練開發 WordPress 外掛。 有了足夠的經驗,您可以建立外掛程式並在 WordPress 外掛目錄中提供它們,甚至在市場上出售它們。
您建立的外掛程式越多,您就越擅長創建自訂解決方案以新的方式擴展 WordPress 網站。 透過時間和堅持,您可以掌握 WordPress 外掛開發。