次世代 Hugo

無駄を削ぎ、本質を研ぐ

支援 Pointfree 的 Function

Sam Xiao's Avatar 2026-05-01

Hugo 並不是所有 Function 都支援 Pointfree,本文整理常用支援 Pointfree 的 Function。

Version

Hugo 0.161.1

文字與內容處理

這是 Pipeline 最常用的場景,用於鏈接多個過濾器。

  • markdownify():將字串轉為 HTML
  • findRE() / replaceRE():正規表達式搜尋與替換
  • humanize():將字串轉為易讀格式
  • lower() / upper() / title():大小寫轉換
  • truncate():截斷文字

資源與圖片處理

Hugo 的資源管道 (Hugo Pipes) 完全建立在 Pipeline 基礎上。

  • resources.Get():獲取資源
  • fingerprint():加入雜湊值 (用於快取清除)
  • minify():壓縮 HTML/CSS/JavaScript
  • toCSS():將 SASS/SCSS 編譯為 CSS
  • Resize() / Fill() / Fit() / Filter():圖片縮放

集合與排序

對頁面群組或陣列進行篩選。

  • where():過濾集合
  • sort():排序
  • first() / last():取前 N 個或後 N 個項目
  • group():分組

安全與編碼

為了防止 XSS 攻擊或符合 URL 格式。

  • safeHTML():宣告字串為安全 HTML (不進行轉譯)
  • safeJS():處理 Javascript
  • urlize():將字串轉換為 URL 友善格式。
  • base64Encode() / base64Decode():Base64 編碼轉換

邏輯判斷與預設值

  • default():當值為空時給予預設值