Automattic主題團隊宣佈新的區塊父主題Blockbase

blockbase

從站點編輯器看到的WordPress主題-Blockbase

任何構建和維護有價值的主題的WordPress公司已經至少做了一些初步工作,因為WordPress越來越接近捆綁其即將推出的區塊主題系統。Automattic的主題團隊也不例外。Ben Dwyer昨天在Theme Shaper部落格上宣佈了團隊的新的Blockbase父主題。它包括對全域性樣式和區塊模板的支援。

該主題基於Automattic於1月份推出的經典的、區塊編輯器就緒的Blank Canvas專案。直到幾天前,它甚至被命名為Blank Canvas Blocks。在過去的幾個月裡,我一直在跟蹤該團隊的工作,等待Blockbase和Mayland Blocks,一個基於團隊最初的Mayland的子主題,是如何出現的。

該團隊建立了一個全面的系統,可以防止他們在每次發生變化時對他們為WordPress.com建立的每個區塊主題進行徹底檢查。對於尚未涉足區塊主題池的主題作者來說,這可能也是他們需要的起點。

一些區塊主題設計師的聖盃將建立一個僅包含theme.json檔案的專案。目標:讓WordPress通過設定和樣式配置生成所有CSS。所有主題作者都不可能通過這種方式實現他們的設計目標——大多數人至少需要一些自定義 CSS。而且,這樣的目標是否是件好事還有待觀察。

儘管如此,主題設計的未來將依賴於JSON配置和生成的樣式。Blockbase利用該系統為其最終的子主題建立一組標準化的路標。這確保了創作者不會隨著區塊樣式的快速發展而不斷更新他們的主題。

Blockbase充當了當前可以通過theme.json檔案配置的內容與將來可能實現的內容之間的橋樑。

它是區塊的現代Underscores (_s) ,WordPress 主題設計社羣將需要這樣一個專案向前發展。他們需要一個起點和教育工具,而Blockbase明顯就是這樣的一個工具。

在最新版本的古騰堡外掛只涵蓋的是什麼,最終,WordPress會在未來數月和數年處理一小部分。但是,它確實允許主題作者通過settings.custom金鑰新增自定義設定,建立自己的CSS變數,這些變數會自動輸出到站點的頭部。主題團隊利用此功能發揮了優勢。在Gutenberg當前不支援設定的情況下,Blockbase 有一個自定義theme.json引數。然後主題在其樣式表中使用生成的 CSS 變數。由於 Gutenberg 和 WordPress 最終支援更多這些設定,團隊可以簡單地刪除不需要的程式碼。

這個主題並非完全沒有意見。Dwyer 寫道:“Blockbase 旨在代表我們認為最終應該存在於 Global Styles 中並可由使用者配置的所有主題樣式設定。” 隨著系統的不斷完善,區塊主題的發展仍然可能以意想不到的方式發生變化,主題也需要隨之改變。應該預料到路上的顛簸。

這是一個即將成為和當前區塊主題者可以學習的專案。雖然目前可以通過 GitHub 獲得,但 Dwyer 表示,如果有足夠的興趣,團隊可以研究將其製作為 npm 包。

該主題所做的最獨特的事情之一是theme.json通過PHP使用設定。在Blockbase的functions.php檔案中,它會提取在JSON檔案中註冊的字型系列名稱。然後它會自動從Google Fonts API載入它們關聯的樣式表。雖然它沒有記錄在程式碼中(應該是),但我有根據的猜測,目標是允許子主題作者在他們自己的theme.json檔案中宣告字型並讓Blockbase處理載入。

程式碼比較簡單,重要的是技術。

隨著開發人員努力應對WordPress主題架構不斷變化的性質,他們需要為之前在純PHP世界中解決的一些老問題找到新的解決方案。隨著大多數主題配置轉移到JSON和模板轉移到HTML,很容易感覺他們正在失去PHP的動態特性。這是可靠的東西,開發人員花了數年時間圍繞舊的WordPress磨練自定義系統。

新的WordPress提供了一套更強大的開箱即用的設計工具,但它看起來有點陌生。這就是為什麼檢視其他人如何處理這些功能的真實程式碼示例是將更多主題作者過渡到基於區塊的開發的重要一步。

這可能是一個小小的程式碼取樣,但我被聰明的想法所折服。在我進一步瞭解塊主題如何工作的過程中,我經常發現自己碰壁,與系統作鬥爭。此程式碼適用於它而不是針對它。

我不經常為一個僅跨越 21 行程式碼的函式寫幾段文字,但我仍然是一名開發人員,喜歡看到優雅簡單的解決方案。這與字型載入技術無關;它是關於解決問題。毫無疑問,此程式碼將在未來幾年內被複制數千次,並進行修改以供數千次使用。如果您是主題開發人員,但還沒有看到,則可以。

評論留言