Skip to content
我寫了個自己的SSG...

我寫了個自己的SSG...

May 14, 2026

Note

本文的內容可能已經過時。

講真話我不知道為啥,我偏偏要寫一個自己的SSG。

SSG是什麼?能吃嗎

不能吃但很好吃。 SSG,全名Static Site Generator, 翻譯即為靜態網站生成器。 靜態網站指的是幾乎不依賴JavaScript腳本, 就能顯示內容的網站,比如我說過很喜歡的Ivon, 他的部落格就是用SSG生成,讓不使用JS的使用者也能閱讀。

那為啥你說不知道為啥偏偏自己寫?

因為SSG這玩意其實市面上一堆。 我個人一方面希望部落格按自己的方式寫, 另一方面我幾乎沒用過任何SSG。 這裡讓AI舉了幾個例子:

  • Jekyll
  • Hugo
  • VitePress 其實我也只有用Jekyll, 用自己的腳本生成完再丟給GitHub生一次Pages才能看, 窮啊,誰叫Pages那麼香,一毛不花就能架網站。 但Jekyll不符合我要求啊,我有sitemap、rss什麼的。

寫了哪些檔案?

這些吧,應該算簡潔了。

  • headtail.py:建立頁首跟頁尾
  • htmlmaker.py:填空題,配合format建立各個網頁
  • markdown.py:讓AI寫的MD轉HTML,
    不用markdown模組是為了在不同裝置上使用
  • metadata.py:就是網站一大堆Metadatas的生成器
  • timeline.py:建置我的動態牆
  • xmlbuild.py:建置sitemap跟rss
  • build.py:充其量就是拼積木 沒啦awa 是不是很簡潔呢(自肥)

有哪些坑?

超多啊

  • AI寫的MD生成器缺斤少兩,應該是指令沒下對
  • 單雙引號不能亂用(ex. f"在雙引號裡的format{i["再套雙引號"]}" 會讓Actions爆炸)
  • htmlmaker要記得怎麼拼接
  • 要能看懂哪裡出錯 這專案重建到現在三天四十個commits, 其實也挺離譜的。

順帶一題這文章是湊數的,我想拿去給Ivon放友站嘿嘿