文章目錄
使用 markdown 搭配 Hugo 建立網站
最近大學時的學長準備到師大去當老師,左思又右想不知道該送什麼慶賀,後來想起過去學長曾經想要使用 Google Sites 建立個人形象網站,但一直無法成功被 google search engine 建立索引,所以就興起為學長建立個人網站做為賀禮了表個人的祝賀之意
基本環境說明
- macOS Ventura 13.4
- Hugo v0.115.3
- git 2.41.0
建立步驟
安裝必需軟體
設定 Hugo 網站專案
使用 hugo cli 建立網路專案
會以專案名稱建立對應資料夾與相關的 hugo 設定檔
語法
hugo new site {website_project_name}
範例
以
yowkotsai.github.io
做為專案名稱 (這是為之後部署至 GitHub Pages 做準備)hugo new site yowkotsai.github.io
建立 git repo 來進行版控
語法
cd {{folder}} && git init
範例
cd yowkotsai.github.io && git init
將目標的 hugo theme 以 git submodule 加入
themes
資料夾中以 FixIt Theme | Hugo 為例
語法
git submodule add {your_theme_git} themes/{theme_name}
範例
git submodule add [email protected]:hugo-fixit/FixIt.git themes/fixit
設定 theme
語法
echo "theme = '{theme name}'" >> hugo.toml
範例
echo "theme = 'fixit'" >> hugo.toml
測試
預設使用
http://localhost:1313/
hugo server
心得
我在引用 theme 時發現個奇怪的點,以這個 theme 為例:相關的 config 是在 theme 的 folder 中,我嘗試將 config 移至根目錄並無法成功套用,這樣一來就是每個 website 需要自行 fork 一份 theme 才能做修改,這樣日後的更新或是與原本 repo 的 sync 就變得複雜,感覺不是很便利,我怎麼記得以前除非要自行客製,不然 config 可以放在外層?!
我試了一下,最後我決定這麼做
將 theme 的 config 改為 bak
避免設定互相 overwrite
mv themes/fixit/config.toml themes/fixit/config.toml.bak
將 theme config 內容移至 hugo.toml 中
cat themes/fixit/config.toml.bak >> hugo.toml
我有找到這個網站: https://docs.gethugothemes.com/guide/ ,它的處理方式是每個 theme 中都有 example site,將其中的 config copy 到外層就可以正常使用,但缺點是這個網站需要安裝的基礎軟體較多(Hugo、go、Nodejs)、多數的 theme 需要額外付費、theme 的文件不一定齊全
參考資訊
文章作者 Yowko Tsai
上次更新 2023-07-22
授權合約
本部落格 (Yowko's Notes) 所有的文章內容(包含圖片),任何轉載行為,必須通知並獲本部落格作者 (Yowko Tsai) 的同意始得轉載,且轉載皆須註明出處與作者。
Yowko's Notes 由 Yowko Tsai 製作,以創用CC 姓名標示-非商業性-相同方式分享 3.0 台灣 授權條款 釋出。