WordPress 框架獲得一個新的舒適之家 – IncludeWP
已發表: 2016-07-27今年早些時候(2016 年 3 月),插件審查團隊在 make.wordpress.org 上發表聲明,官方插件庫中不再允許使用框架。
我們決定自己為 WordPress 框架創建一個有價值的存儲庫,並創建了 IncludeWP。 一個主頁,或者更確切地說,一個排行榜,顯示 WordPress 插件和主題開發人員的所有開源框架。 為開發商評估當前市場上的產品提供一站式服務。
它最初是一個有趣且令人耳目一新的周末副項目,團隊決定在三週前齊心協力,併計劃立即發布它。 但是,這些年來,我養成了在從我信任的人那裡得到一些反饋之前不發布任何東西的習慣,所以我決定先戳幾個來自 WordPress 社區的朋友。
我們得到了很好的反饋和一些 UI 建議,但有一條評論引起了我的大部分注意:來自 Addendio 的 Luca Fracassi 說:“Vova,如果我可以點擊一個框架並查看哪些插件和主題實際使用它,那就太酷了。”
“該死的! 這將是驚人的。” 我心想。 但是我們不可能把時間花在手動搜索和添加這些插件和主題上。
IncludeWP 存儲庫已開始作為 Freemius 團隊的一個有趣且令人耳目一新的周末副項目。Tweet
在與 Luca 反复討論之後,我們意識到我們可以利用 WordPress.org API 和 SVN 來自動識別插件和主題與 WordPress.org 中框架的關聯。 所以我們決定聯手。
Luca 花了幾天時間開發了一個框架識別邏輯並在 .org 上運行它,並友好地公開了一個自定義 API 端點供我們使用該數據。 我們利用 Luca 的端點從 WordPress.org 獲取插件和主題數據,並將其呈現在框架頁面下。
我們又花了一周的時間才最終確定它,但現在它的功能強大了 10 倍! 開發人員實際上可以看到其他產品正在使用該框架。 本著開源精神,它可以在 GitHub 上供公眾使用。
為什麼 WordPress 框架、SDK 和庫很棒?
代碼可重用性很棒! 它實際上是開發基礎的一部分。 就如此容易。 看看最流行的在線電子商務平台 WooCommerce,它最初是 Jigoshop 的一個分支。
作為開發人員,我們嘗試優化自己的代碼並確保零冗餘。 但是一談到其他開發者的工作,我們突然就很挑剔了。
作為一名開發人員,我知道你在想什麼……
“沒有人能像我一樣寫代碼。” 新聞快訊:那裡有許多有天賦的開發人員,所以不要再做勢利眼了,開始重用吧!
此外,一些框架被數千名開發人員使用,部署在數十萬個網站上,並且已經在生產環境中運行多年。 這些庫很可能比您新編寫的代碼更能證明錯誤。
“我可以自己構建它,我不需要任何框架”——是的,你可以! 但為什麼? 為什麼要重新發明輪子? 我知道了; 當它不是你的代碼時,會有一個學習曲線。 但另一方面,學習一個有可靠文檔的框架肯定比從頭開始自己開發所有東西要快。
“為什麼我需要開銷? 我只使用圖書館處理的一小部分。 哈,框架好臃腫,比我的插件還大!” – 大多數插件都從一個很小的功能開始。 也許今天這就是您所需要的,但是隨著您的 WordPress 插件或主題的發展,您可能會添加更多的東西。 擁有堅實的基礎將使您的生活更輕鬆,並在未來為您節省大量時間。 嘗試進行長期規劃,並選擇最適合您的需求和路線圖的框架。
底線 - 不要浪費時間一遍又一遍地重寫相同的東西。 大約有 20 種不同的框架可以處理自定義字段
為什麼我們決定開源這個項目?
我們開始使用 Freemius for WordPress 的原因之一是因為它很棒的社區和開源的心態。 我們堅信開源及其力量,這是我們回饋生態系統的方式之一。
其次,我在宣傳代碼可重用性。 我能做的至少是為其他開發人員提供在他們的項目中重用我們的代碼的選項。 通過重用這個代碼庫,每個人都可以輕鬆地為 GitHub repos 創建一個類似的類別類型列表迷你站點。
通過重用這個代碼庫,每個人都可以輕鬆地為 GitHub repos 創建一個類似的類別類型列表迷你站點。Tweet
一個 WordPress 框架陷阱——版本控制
WordPress 不是操作系統,不同的插件和主題之間沒有孤島。 此外,WordPress 核心沒有適當的庫依賴機制。 這意味著如果兩個插件使用具有不同版本的相同框架,則可能會觸發向後兼容性問題,產生錯誤,並且在最壞的情況下 - 完全破壞站點。
所以接受我的友好建議:在你選擇你最喜歡的框架、庫或 SDK 之前,你應該確保它能夠處理版本控制。
您應該確保您選擇的框架能夠處理版本控制。Tweet
如何為您的插件或主題選擇正確的框架
這得看情況。
如果我要開始一個新的 WordPress 插件或主題,我會查看以下內容(不一定按此順序):
- 我會首先檢查市場上有什麼,以了解框架提供的不同特性和功能集。
- 我肯定會檢查這些項目的受歡迎程度。 更受歡迎的項目背後可能有更強大的社區,這意味著應該更容易獲得幫助/建議。 這也可能意味著框架的主要錯誤已經被消除。
- 我會花更多時間研究新框架。 隨著 Web 開發實踐的進展。 此外,WordPress 核心正在發展,新框架可以更高效,利用新的核心機制——用更少的代碼做更多的事情。
- 我會詢問來自 WordPress 社區的開發者朋友——我信任的人,並且可以根據他們的經驗向我提供真誠的反饋。
我有一個框架! 如何將其添加到 IncludeWP?
十分簡單! 該網站是 GitHub 上的一個開源項目,只需 fork IncludeWP repo,將您的框架添加為 src/frameworks 文件夾中的 <name>.php,然後提交 Pull Request。
確保遵循一些簡單的準則:
- GPL:該框架必須獲得 GPL 許可,因此使用它的插件和主題可以在 WordPress.org 上列出(非 GPL 框架將插件呈現為非 GPL)。
- GitHub:該框架必須在 GitHub 上有一個公共存儲庫,我們可以鏈接到該存儲庫並從中提取統計信息。
- 堅持格式:填寫與 src/frameworks 中其他框架相同的所有字段。
- WordPress.org(可選):如果框架已經在 WordPress.org 上列為插件,請添加對插件 slug 的引用。
- 簡短描述:保持概述頁面的描述簡短而甜美。
下一個是什麼?
現在輪到你向社區宣傳了。 告訴你的朋友,在 Twitter 上分享,在 GitHub 上為項目加註星標……然後重複使用!