HUGO
Menu
GitHub 87548 stars Mastodon

常見問題

這些問題是新手用戶經常詢問的。

Hugo 的 論壇 是一個活躍的用戶和開發者社區,他們回答問題、分享知識並提供示例。快速搜索超過 20,000 個主題通常就能回答你的問題。在提出第一個問題之前,請務必閱讀有關 請求幫助 的說明。

以下是新手用戶最常詢問的幾個問題。

錯誤消息表明某個功能不可用。為什麼? :

版本

Hugo 提供具有核心功能的標准版,以及具有更多功能的擴展版和擴展/部署版。除非您需要以下功能,否則請使用標准版。

功能 擴展版 擴展/部署版
通過嵌入式 LibSass 將 Sass 轉譯為 CSS。請注意,嵌入式 LibSass 已在 v0.153.0 中棄用,並將在未來版本中刪除。請改用 Dart Sass 轉譯器,它與任何版本兼容。 ✔️ ✔️
直接將您的站點部署到 Google Cloud Storage 存儲桶、AWS S3 存儲桶或 Azure Storage 容器。請參閱 詳情 ✔️

當你嘗試使用所安裝版本中不可用的功能時,Hugo 會拋出此錯誤:

this feature is not available in this edition of Hugo

要解決此問題,請根據上面的功能表安裝不同的版本。有關詳細信息,請參閱 安裝 部分。

為什麼訪問主頁時會看到"Page Not Found"? :在 content/_index.md 文件中:

  • draft 是否設置為 true
  • date 是否在未來?
  • publishDate 是否在未來?
  • expiryDate 是否在過去?

如果其中任何一個問題的答案是肯定的,請更改字段值,或使用以下命令行標志之一:--buildDrafts--buildFuture--buildExpired

為什麼某個頁面未發布? :在 content/section/page.md 文件中,或在 content/section/page/index.md 文件中:

  • draft 是否設置為 true
  • date 是否在未來?
  • publishDate 是否在未來?
  • expiryDate 是否在過去?

如果其中任何一個問題的答案是肯定的,請更改字段值,或使用以下命令行標志之一:--buildDrafts--buildFuture--buildExpired

為什麼我看不到頁面的任何子頁面? :你可能使用了 index.md 文件而不是 _index.md 文件。請參閱 詳細信息

index.md 文件和 _index.md 文件之間有什麼區別? :包含 index.md 文件的目錄是 葉式內容包。包含 _index.md 文件的目錄是 分支式內容包。請參閱 詳細信息

為什麼我的 partial 模板沒有按預期渲染? :調用 partial 時,你可能忘記傳遞所需的 上下文。例如:

{{/* 不正確 */}}
{{ partial "pagination.html" }}

{{/* 正確 */}}
{{ partial "pagination.html" . }}

在模板中,為變量賦值時 :== 之間有什麼區別? :使用 := 初始化變量,使用 = 為已初始化的變量賦值。請參閱 詳細信息

當我對列表頁面進行分頁時,為什麼頁面集合未按指定過濾? :你可能在同一頁面上多次調用 PaginatePaginator 方法。請參閱 詳細信息

為什麼有兩種調用 shortcode 的方式? :如果 shortcode 模板或開始和結束 shortcode 標簽之間的內容包含 Markdown,請使用 {{% shortcode %}} 表示法。否則使用 {{< shortcode >}} 表示法。請參閱 詳細信息

我可以使用環境變量來控制配置嗎? :可以。請參閱 詳細信息

為什麼我看到從一個構建到下一個構建的輸出不一致? :最常見的原因是頁面沖突(將兩個頁面發布到同一路徑)和並發的影響。使用 --printPathWarnings 命令行標志檢查頁面沖突,如果你懷疑存在並發問題,請在 論壇 上創建主題。

為什麼 Hugo 的開發服務器沒有檢測到文件更改? :在默認配置中,Hugo 的文件監視器可能無法檢測到文件更改,當:

  • 在 Windows Subsystem for Linux(WSL/WSL2)中運行 Hugo,且項目文件位於 Windows 分區上
  • 在本地運行 Hugo,且項目文件位於可移動驅動器上
  • 在本地運行 Hugo,且項目文件位於通過 NFS、SMB 或 CIFS 協議訪問的存儲服務器上

在這些情況下,使用 --poll 命令行標志而不是監視原生文件系統事件。例如,要每 700 毫秒輪詢一次項目文件,請使用 --poll 700ms

為什麼我的頁面 Store 缺少值? :Page 對象上的 Store 方法允許你在給定頁面上創建 臨時存儲區 來存儲和操作數據。值通常在 shortcode 模板、由 shortcode 模板調用的 partial 模板或 render hook 模板中設置。在這三種情況下,在 Hugo 渲染頁面內容之前,臨時存儲區的值是不確定的。

如果你需要從父模板訪問臨時存儲區值,而父模板尚未渲染頁面內容,你可以通過將返回值分配給 空操作 變量來觸發內容渲染:

{{ $noop := .Content }}
{{ .Store.Get "mykey" }}

你也可以使用其他方法觸發內容渲染。請參閱下一個常見問題解答。

哪些頁面方法會觸發內容渲染? :Page 對象上的以下方法會觸發內容渲染:ContentContentWithoutSummaryFuzzyWordCountLenPlainPlainWordsReadingTimeSummaryTruncatedWordCount

對於其他問題,請訪問 論壇。快速搜索超過 20,000 個主題通常就能回答你的問題。在提出第一個問題之前,請務必閱讀有關 請求幫助 的說明。


Last updated: January 1, 0001
Improve this page