新聞中心
在本基礎(chǔ)教程中,我們將了解如何開始插件開發(fā),帶您完成創(chuàng)建第一個插件的過程。

創(chuàng)新互聯(lián)長期為上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為科爾沁左翼企業(yè)提供專業(yè)的網(wǎng)站制作、成都網(wǎng)站建設(shè),科爾沁左翼網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
插件是wordpress如此多功能且用戶友好的平臺的重要原因。它們使任何用戶都可以通過單擊按鈕快速向其站點添加新代碼和功能。但是,如果您不想滿足于現(xiàn)有插件,而是自己制作插件怎么辦?
創(chuàng)建插件并不是您可能擔(dān)心的復(fù)雜過程。只需一點時間和精力,幾乎任何用戶都可以從頭開始創(chuàng)建插件。只要您了解插件如何連接到WordPress的核心(我們將對此進行解釋),構(gòu)建您自己的插件就會是一個有趣且具有挑戰(zhàn)性的項目。
為什么開發(fā)WordPress插件
簡單來說,插件是為您的WordPress網(wǎng)站添加新功能的軟件。他們“掛鉤”到 WordPress 平臺的核心,并以數(shù)千種不同的方式對其進行擴展。
使用插件可為您提供幾乎無限的自定義可能性。如果您想將某個功能添加到您的站點,您可以搜索包含數(shù)千個選項的插件目錄。
如果您找不到可以滿足您需求的插件,或者您覺得現(xiàn)有選項不太適合您的網(wǎng)站,您可能需要考慮創(chuàng)建自己的插件。為此,您首先需要了解插件如何與WordPress交互。
插件如何工作:鉤子、動作和過濾器
開始插件開發(fā)最困難的部分是學(xué)習(xí)所有相關(guān)術(shù)語。出于這個原因,我們現(xiàn)在將解釋一些最重要和最常用的術(shù)語。
您將遇到的最重要的概念之一是鉤子。掛鉤是連接點,您可以在其中將插件附加到WordPress核心代碼?;旧?,鉤子決定了插件將在站點上何時何地使用。
一個基本的例子是wp_loaded鉤子,它在整個WordPress站點加載時觸發(fā)。如果插件具有僅在達到該狀態(tài)時才需要運行的功能,您可能希望將其連接到此鉤子。
鉤子有兩種變體——動作和過濾器。兩者的基本區(qū)別可以歸納如下:
- 操作添加新功能。
- 過濾器修改現(xiàn)有功能。
當(dāng)然,還有更多。如果您想完全理解它們,我們建議您閱讀操作和過濾器的工作原理。
創(chuàng)建插件之前要考慮的事項
WordPress提供了創(chuàng)建插件時要遵循的最佳實踐列表。
在開始創(chuàng)建插件之前,您需要查看WordPress推薦的最佳實踐。遵守這些準則將幫助您為插件打下堅實的基礎(chǔ)。它還將確保與其他插件和主題的兼容性,如果您想共享插件,則更容易。
首先,您應(yīng)該考慮如何命名插件、變量和函數(shù)。這很重要,因為您希望避免創(chuàng)建與其他插件使用的名稱相匹配的名稱。最好的策略是為您定義的每個變量和函數(shù)添加一個唯一的前綴。
接下來,您需要確保您的插件是安全的。這是一個很大但很重要的話題。我們建議您通讀插件手冊以獲取有關(guān)如何確保代碼安全的更多信息。未正確保護的插件在任何站點上都可能帶來巨大風(fēng)險,因此請不要忽視這一方面。
您還需要考慮如何構(gòu)建插件。它應(yīng)該包含多少個文件,您想將其保存在一個文件夾中還是將其分散到多個文件夾中?提前考慮這一點將為您提供一個可靠的框架來使用,并使其他開發(fā)人員更容易理解您的插件是如何工作的。
最后,遵守WordPress的編碼標準很重要。這些是由 WordPress 社區(qū)創(chuàng)建的,將幫助您避免常見的編碼錯誤。它們還將使您的代碼易于其他 WordPress 用戶和開發(fā)人員理解。
如何創(chuàng)建WordPress插件
到現(xiàn)在為止,您應(yīng)該已經(jīng)做好了將腳趾浸入插件開發(fā)領(lǐng)域的準備。因此,事不宜遲,讓我們開始吧!這些步驟將引導(dǎo)您完成創(chuàng)建第一個插件的過程。
Step 1:設(shè)置臨時站點
首先,如果您還沒有臨時站點,則需要創(chuàng)建一個臨時站點。臨時站點,也稱為開發(fā)環(huán)境,是不向公眾開放且僅用于開發(fā)目的的網(wǎng)站。
臨時站點使您能夠開發(fā)插件并對其進行測試,而不會影響您的實時站點。您永遠不應(yīng)該使用實時站點進行開發(fā),因為您可能會破壞站點或使其易受攻擊。您的登臺環(huán)境可以是您自己機器上的本地 WordPress 安裝,也可以是私人 WordPress 站點。
我們已經(jīng)編寫了有關(guān)搭建本地環(huán)境創(chuàng)建臨時站點的教程,因此我們不會在此處再次展開詳細介紹。
Step 2:新建插件文件
準備好臨時站點后,就可以開始工作了。您需要做的第一件事是創(chuàng)建您的插件所在的文件夾。所有插件都添加到同一位置,即名為/wp-content/plugins/ 的目錄。
現(xiàn)在導(dǎo)航到此位置,然后創(chuàng)建一個新文件夾,為其指定一個與您的插件匹配的名稱。例如,如果您的插件將被稱為“我的第一個插件”,則將文件夾命名為my-first-plugin是有意義的。
然后,您應(yīng)該將一個新的PHP文件添加到該文件夾??中,并具有相同的名稱(例如:my-first-plugin.php)。您可以使用任何文本編輯軟件(例如TextEdit或記事本)來執(zhí)行此操作。在文件仍然打開的情況下,輸入以下信息:
正如您可能知道的那樣,這是WordPress將與您的插件一起顯示的元信息。用正確的詳細信息替換占位符并保存文件。
此時,您可以打開站點的管理區(qū)域并單擊Plugins。您會注意到您的新插件已添加到列表中。
顯然,您尚未添加任何功能,因此該插件實際上不會執(zhí)行任何操作。但是,您仍然可以啟用它。
您還應(yīng)該添加一個自述文件到您的插件。如果您打算與其他人共享文件,您將需要它,因為它決定了目錄中插件頁面的內(nèi)容。您的文件符合WordPress 標準也很重要。
和以前一樣,只要使用文件名readme.txt保存它,就可以使用任何文本編輯器來執(zhí)行此操作。您還可以使用插件自述文件生成器快速創(chuàng)建此文件。當(dāng)您使用任一方法創(chuàng)建自述文件時,請將其保存到您的插件文件夾中。
Step 3:添加您的代碼
是時候為您的插件添加功能了;這就是你的創(chuàng)造力大放異彩的地方!除了您的想象力和編碼能力之外,此時您可以做的事情真的沒有限制。
現(xiàn)在,讓我們創(chuàng)建一個包含單個函數(shù)的簡單插件。
我們的插件將更改用戶在您的網(wǎng)站上嘗試登錄失敗時顯示的默認錯誤消息。默認情況下,此消息會告訴用戶嘗試被拒絕的原因。
您的插件將包含一個用通用內(nèi)容替換此消息的函數(shù)。在您選擇的編輯器中打開my-first-plugin.php文件,并在標題信息后添加以下代碼:
function wb_no_wordpress_errors(){ return 'Something went wrong!'; } add_filter( 'login_errors', 'wb_no_wordpress_erors' );這是一個非常簡單的例子,但讓我們分解它。
首先,我們定義了一個名為wb_no_wordpress_errors的新函數(shù)——帶有“wb”前綴(對于WBOLT)以確保名稱是唯一的。這個函數(shù)只做一件事情,那就是返回一個指定的字符串。該字符串是我們想要顯示的內(nèi)容,而不是錯誤消息。我們已將其設(shè)置為“Something went wrong!” 但請隨意將其更改為您喜歡的任何內(nèi)容。
之后,我們使用了一個連接到名為login_errors的鉤子的過濾器。當(dāng)這個特定的鉤子觸發(fā)時——即,當(dāng)發(fā)生登錄錯誤時——過濾器將運行no_wordpress_errors函數(shù)。
粘貼代碼后,您可以保存文件,插件就可以運行了。正如我們提到的,這只是一個基本的例子。隨意創(chuàng)建一些全新的東西,甚至擴展我們的功能。
Step 4:測試插件
在向插件添加一些代碼后,您需要對其進行測試以確保其正常工作。這通常很容易做到,盡管測試方法將取決于您添加的功能。
讓我們繼續(xù)上面的例子。注銷WordPress管理區(qū)域并訪問臨時站點的/wp-login/頁面。然后,嘗試使用一些故意不正確的憑據(jù)登錄。如果您的插件成功,您將看到您指定的消息。
但是,如果您使用我們提供的代碼并且沒有做任何改動,您會發(fā)現(xiàn)該插件沒有工作。事實上,您很可能會看到根本沒有出現(xiàn)任何錯誤消息。
這是因為我們實際上在代碼中犯了一個故意錯誤,您必須在插件工作之前更正這些錯誤(抱歉,但我們希望您也體驗測試插件)。
返回到您的my-first-plugin.php文件。您可能已經(jīng)在這里發(fā)現(xiàn)了錯誤。在最后一行中,最后一個函數(shù)名拼寫錯誤。您可以改用此版本的行來解決此問題:
add_filter( 'login_errors', 'wb_no_wordpress_errors' );您現(xiàn)在可以保存文件并重試。這一次,當(dāng)您嘗試使用不正確的憑據(jù)登錄時,您應(yīng)該會看到自定義消息。
現(xiàn)在,您確定您的插件工作正常!
Step 5:分享插件
此時,您的插件已準備好在任何 WordPress 站點上安裝和激活。最簡單的方法是將my-first-plugin文件夾壓縮為zip文件。然后,您可以使用此zip文件在您的實時站點上安裝插件。
您可能還希望在外部托管插件,以便其他人下載、測試和使用它。最常見的主機是 WordPress 插件目錄。如果你想在那里添加你的插件,你需要提交它。請記住,您的插件必須遵守某些限制。
另一種選擇是將您的插件上傳到不同的主機上,例如GitHub。這需要您為插件創(chuàng)建一個存儲庫,然后您可以上傳它。更多使用GitHub的信息可以參考官方文檔。
小結(jié)
通過創(chuàng)建自己的插件,您可以對自己的WordPress網(wǎng)站進行前所未有的控制。插件可用于自定義您想要的任何特性或功能。如果您花時間學(xué)習(xí)基礎(chǔ)知識,那么制作您的第一個插件應(yīng)該不會那么困難——對于業(yè)余愛好者和嶄露頭角的專業(yè)人士來說都是如此。
雖然功夫不負有心人,但還是要說的是,無論是開發(fā)主題還是插件,你都需要熟練地掌握后端和前端開發(fā)知識。
分享名稱:WordPress插件開發(fā)入門基礎(chǔ)教程
網(wǎng)頁路徑:http://www.5511xx.com/article/djgejsd.html


咨詢
建站咨詢
