開始

0. 安裝、使用 與 資源

您可以從 Hugo 官方網站 找到安裝方式和相關資源。

使用 hugo serve -D 執行伺服器,使用 hugo 生成網頁。

1. 網站架構

一個 Hugo 專案擁有固定架構,而作為模板生成網站的 Hugo,我們可以把其視為一函式:

template(data)=output

其中個別的資料夾為:

  • template: /layouts /themes /static /assets /resources
  • data: /data /content
  • output: /public

作為 hugo 的基礎模板,以基礎元素構成,您可以參考 Blank 模板

2. 撰文

針對大多數 blog 模板(Blank 模板 ),內容預設會被放置在 /content/posts 中,格式大致如下:

[meta-data]
[markdown content]

其中 [meta-data] 可以是 json、yaml、toml,他們的格式分別為, yaml 和 toml 上下分別要用 — 和 +++ 區分,json則無。title屬性是 hugo content 的保留字。

3. 專案配置

hugo 的專案會有一個用來辨別專案的配置文件。專案配置和 metadata 一樣共有 3 種格式: config.[ext]

4. 模板 與 主題

主題會安裝於 /themes ,而專案的模板則可直接置於 /layouts。Hugo 模板的尋訪規則會先從 /layouts > /themes/[name]/layouts。

欲修改模板,可根據 Hugo 的根模板位於 /layouts/_default/baseof.html,您可以依照您的需求進行修改。

5. 基礎語法

Hugo template 是基於原生的 Go template,而 Hugo 則在其之上進行擴充。