WordPress的方法:WP插件開發的基礎知識

文章撰寫者:
  • 博客技巧
  • 更新:Aug 12,2013

我們將致力於一系列專注於“如何用WordPress做X.“。 這些文章有點冗長,主要面向經驗豐富的網站管理員和開發人員; 如果您是WordPress的新手,請查看我的 第一個WordPress博客指南.

而現在,一些基本的介紹。

通過開發新插件擴展WordPress功能

WordPress主頁

WordPress是世界上最受歡迎的內容管理平台,其自我託管的PHP安裝包超過60百萬用戶,還有數百萬用戶使用其基於Web的遠程託管WordPress.com服務。 這不是巧合或錯誤。 簡而言之,WordPress是世界上功能最全,價格最實惠(免費!),易於使用的內容管理應用程序。 然而,即使是這種內容管理的巨頭並不是絕對完美的,許多用戶最終發現該軟件缺少一個或兩個基本功能,而這些功能根本就是它們不能沒有的。

輸入 WordPress插件.

然後,這些不滿意的用戶將繼續進行搜索,大量搜索,以便找到合適的插件來完成工作。 有些人發現需要插件,但很多人根本找不到他們正在尋找的插件。

一些WordPress用戶可能滿足於簡單地放棄戰鬥並讓自己辭職,其生活中的網站缺少一個基本功能。 但是這些用戶中的一大群人根本不願意放棄,他們將繼續設計自己的定制插件來完成工作。 它可能聽起來很複雜和令人生畏,其中一些部分可能是。 當然, 對PH的紮實了解P 將需要更高級的插件,為WordPress功能添加真正的功能。 但是插件是一個相對容易編寫的東西,特別是對於整個WordPress標準的基本功能而言,只需要“重新設計”以便更好地完成工作並以更愉悅的方式呈現它。

那些不滿足於第二好的用戶並且正在考慮創建自己的插件的用戶只需要按照下面的簡單步驟將他們的WordPress安裝放在通向更大功能和兼容互聯網支配的重大創意和宏偉計劃的道路上。

步驟1:在插件目錄中創建一個新文件並為其指定目的

WP插件

創建插件的第一步是在現有的WordPress插件目錄中創建一個新的PHP插件文件。

到目前為止,大多數用戶應該知道在哪裡找到該目錄,因為他們可能已經上傳了一些插件來增強他們的WordPress安裝功能。 但是,對於那些真正接近這個過程的人來說,作為一個完整的新手,包含所有pug文件的目錄可以在以下位置找到WordPress軟件的每個版本和迭代:

/的public_html /可濕性粉劑內容/插件/

導航到該目錄並創建一個名為“my-custom-plugin.php”的新文件(此處為空白)。這個文件將包含從頭到尾的所有工作,我們將給它一個在開發過程中,它不會被意外刪除或過早激活。 創建此文件並將其上載到服務器後,使用FTP客戶端直接編輯此文件(使用內置文本編輯器),同時它仍然託管在服務器上。 這是編輯遠程文件的最佳方式,因為它使保存和上傳基本上是自動的,並且肯定比管理存儲在不同位置的同一文件的多個版本更容易。

該插件現在將被命名,描述並給出一個“byline”。這是放置在主題的“style.css”樣式表文件頂部的相同類型的信息,主題開發人員將通過填充感到賓至如歸以下信息。 在任何其他代碼之前,將此信息放在插件文件的頂部。 即使是開放的PHP標記也不應放在這些註釋行之前。 如果這些行放置不正確或完全省略,插件本身將不會出現在WordPress儀表板中。 這意味著它無法激活,使用,測試或調試,這並不好。 這是打開文件並繼續定義函數之前需要填寫的內容:

/*
插件名稱:用於了解WordPress方法的自定義插件
插件URI:http://www.your-website-here.com
描述:此插件用於演示如何將PHP代碼,WordPress變量,XHTML,CSS和其他信息放入標準插件PHP文件中,以便為標準WordPress安裝添加新功能。
作者:你的名字在這裡
版本:1.0
作者URI:http://www.your-website-here.com
*/

在完全填寫該信息後,WordPress儀表板現在將發現該插件,並且其信息將與插件激活/刪除管理面板中的其他插件一起正確顯示。 該插件現在已被賦予文件名,友好名稱和目的。 此時所有缺失的都是一些功能。 這就是第二步的用武之地。

WP插件

步驟2:定義在WordPress網站上使用的插件功能(或多種功能)

這個插件演示將假設開發人員創建了一個 自定義字段。 此字段將用於確定是否在帖子中包含社交媒體鏈接,以便用戶可以與在Twitter,Facebook,LinkedIn和MySpace等網站上訂閱其社交網絡更新的朋友和家人分享帖子。 。 已創建自定義字段,在本例中為“social_links”。

使用插件中的PHP代碼,我們將確定社交網絡字段是否包含其中的數據。 如果是,則顯示社交媒體共享鏈接的“條形圖”。 如果其中沒有任何數據,則將省略這些鏈接。 這是禁用網站上的帖子共享的好方法,這些帖子根本不適合廣大公眾查看,而在插件中進行此操作是確保此功能適用於所有主題的好方法,而不僅僅是一個主題的輸入模板。

這個過程是通過向WordPress代碼“添加”一個動作來完成的。 這是使用“add_action”PHP命令完成的,該命令駐留有幾個“echo”語句和WordPress代碼的現有鏡頭,可以直接從現有的WordPress模板文件移植。 請記住,幾乎任何可以在模板中使用的變量也可以包含在插件文件中,儘管必須省略打開和關閉的PHP標記,因為代碼已經包含在一個完全包含在內的打開和關閉PHP標記封裝中。

以下是插件文件中添加的“動作”在完全填寫後的樣子:

function social_links($ post_ID){
global $ wp_query;
$ ID = $ wp_query-> post-> ID;
if(get_post_meta(13); == 1)
{
返回$ post_ID。 “社交網絡鏈接按鈕”;
}
其他
{
返回$ post_ID。 “”;
}
}
add_action('the_content','social_links');

第一行代碼僅用於確定是否在WordPress儀表板中填寫了正在查看的特定條目的任何“元”信息。 這是通過查詢WordPress數據庫(使用$ wp_query變量)並在元字段編號13中查找信息來完成的。 每個自定義字段都有一個數字標識,就像條目,註釋和頁面一樣。 此數字可用於條件語句的變量。

因此,首先插件會查看每個條目的自定義字段,並查看字段的數據庫表中是否存在內容。 接下來,它貫穿條件。 如果內容等於“1”,則繼續。 在這種情況下,“1”的使用意味著“如果該字段存在數據。”這將是“0”,它將轉換為“如果該字段沒有數據存在。”因此,如果該字段有數據存在,或等於“1”,函數進入條件的第一部分。 該部分提供了社交媒體共享鏈接的顯示。 為簡潔起見,這些鏈接未包含在該功能中。 但是,他們可以假裝在“return $ post_ID”語句後面的引號中使用簡單的XHTML。

如果自定義字段沒有數據,則就該插件的代碼而言,它實際上等於“0”。 但是,因為這個條件是一個/或語句,而不是具有許多不同結果的條件,我們只需使用“else”結構來指示插件在任何其他情況下打印替代內容。 在這種情況下,它只是打印什麼。 因此,所有需要放在函數中的是:

返回$ post_ID“”

在語句的底部,我們將新函數添加為現有“the_content”PHP變量的“動作”。 這將在條目內容完成打印後直接將社交網絡共享按鈕附加到條目的底部。 這個括號中的陳述是按時間順序排列的,這意味著新的動作(“social_links”)可以放在“the_content”之前,如果這些按鈕應該在內容的開頭顯示,直接在條目的標題打印到屏幕。

完成該功能,並在條目的主要內容打印在頁面上之後直接將動作添加到WordPress循環,該插件基本上已完成。 這是添加結束PHP標記,保存文件並將其上載到服務器以供使用的適當時間。

步驟3:激活插件並試用

該過程最重要的部分是激活插件並驗證其功能是否按預期工作,並且不會導致任何現有插件或標準WordPress功能出現問題。 這也是驗證PHP代碼完整性的好時機,並確保根據需要打印任何輸出(XHTML或其他)。

如果在激活和測試過程中出現任何錯誤,檢查插件文件並確保正確打開和關閉所有語句非常重要。 這意味著在許多情況下檢查標點符號,包括括號,分號,括號和小寫字母。 請記住,PHP區分大小寫,並且它也是標點符號敏感的:任何未閉合的語句基本上都是無限延續的,並且可能導致頁面無法加載或加載速度非常慢。

當所有的問題都解決了,工作基本完成。 但是,對於其他方案,請記住一些其他注意事項。

步驟4:創建插件自述文件

創建一個WordPress插件

如果該插件僅供私人使用,則根本沒有理由創建“ReadMe”文件,當然,除非你害怕你可能會忘記插件的作用,它是如何構建的,或者它是如何在其中運行的WordPress循環本身。 但是,許多開發人員創建插件的目的是將它們分發到更廣泛的WordPress社區,並且擁有超過60百萬的用戶,這是一種促進網站和賺取二次收入的有利方式。

這些用戶實際上需要製作一個ReadMe文檔,該文檔概述了插件的功能,如何將文件安裝到服務器,以及如何設置和自定義其功能。 此文件還可以包含更改日誌等信息,其中詳細說明了隨著時間的推移對插件所做的每個更改和更新。 但是,重要的是解釋插件的功能,工作原理以及如何安裝。 新手用戶不會知道如果沒有引導他們該怎麼做,就像新手插件開發人員在本指南的最後一步之前不知道如何創建新的WordPress功能一樣。

當插件文件完成並與自述文件(通常是.txt文件)配對時,是時候將兩個文檔放入他們自己的文件夾中並使用標準ZIP文件格式壓縮它們。 然後可以將插件上傳到WordPress Extend插件和主題社區,以及開發人員服務器上的自託管解決方案。

相對容易,特別是使用WordPress變量和函數

為WordPress開發新插件的好處是該文件可以使用WordPress已定義和初始化的任何現有PHP函數,變量或循環。 這樣可以輕鬆擴展WordPress功能並增強其在許多主題中的功能,並使插件開發過程像為軟件本身創建新主題一樣簡單。

在將插件用於活動使用或與更廣泛的WordPress社區共享之前,請務必記住測試錯誤,驗證錯誤和功能衝突。 當該過程完成並且插件工作正常後,開發階段就完成了,您將可以自由地享受剛剛創建的成功和新功能。 ;)

關於WHSR的進一步閱讀

要深入了解這一點,請查看 傑里的20基本WordPress插件列表, 適用於WordPress開發人員的25 Handy Code Snippets, 最想要的WordPress黑客,技巧和訣竅; 並且,如果您正在尋找一個好的WordPress主機,請查看我最近使用的內容 - WP發動機 - 這是一個相當昂貴的主機(因此不建議新手),但你得到你付出的代價。

關於Jerry Low

WebHostingSecretRevealed.net(WHSR)的創始人 - 100,000用戶信任和使用的託管評論。 超過15在網絡託管,聯盟營銷和SEO方面的多年經驗。 ProBlogger.net,Business.com,SocialMediaToday.com等的貢獻者。