您的第一個外掛程式

外掛程式讓您可以擴充 Jekyll 的行為以符合您的需求。Jekyll 中有六種類型的外掛程式。

產生器

產生器在您的網站上建立內容。例如

轉換器

轉換器將標記語言轉換成另一種格式。例如

指令

指令 使用子指令來延伸 jekyll 可執行檔。例如

  • jekyll-compose 新增子指令,用於建立文章、頁面或草稿。

標籤

標籤 建立自訂的 Liquid 標籤。例如

篩選器

篩選器 建立自訂的 Liquid 篩選器。例如

掛鉤

掛鉤 提供細緻的控制,以延伸建置流程。例如

旗標

撰寫外掛程式時,有兩個旗標需要留意

旗標 說明

safe

布林旗標,用於告知 Jekyll 此外掛程式是否可以在不允許執行任意程式碼的環境中安全執行。GitHub Pages 會使用此旗標來判斷哪些核心外掛程式可以使用,以及哪些外掛程式不安全。如果您的外掛程式不允許執行任意程式碼,請將此旗標設定為 true。GitHub Pages 仍然不會載入您的外掛程式,但如果您提交外掛程式以納入核心,最好正確設定此旗標!

priority

此旗標決定外掛載入的順序。有效值為::lowest:low:normal:high:highest。優先順序最高的比對會先套用,優先順序最低的會最後套用。

以上述範例外掛之一為例,以下說明如何指定這兩個旗標

module Jekyll
  class UpcaseConverter < Converter
    safe true
    priority :low
    ...
  end
end

最佳實務

指南可協助您了解建立外掛的具體事項。我們也有一些建議的最佳實務,協助您建構外掛。

我們建議為您的外掛使用 寶石。這有助於您管理相依性、與網站原始碼保持區隔,並讓您在多個專案中分享功能。如需建立寶石的提示,請參閱 Ruby 寶石指南 或瀏覽現有外掛的原始碼,例如 jekyll-feed