静态博客搭建日记

本站的第一篇post。

本文在Craft上撰写并更新。可访问以下链接:

引子

买了新域名pieris05.com,手痒,想搭blog。折腾Wordpress近两年,越发觉得维护起来确实麻烦,总有奇奇怪怪的小bug。决心转向静态博客,并从ACG-oriented转向response-oriented。选择了Hugo,与个人主页一样部署在Cloudflare Pages上。

另外,在Obsidian, Notion等笔记软件之间兜兜转转几年,最终发现了心仪的软件Craft。它在Apple全终端的表现均相当出色,而且导出功能既方便又好看。折腾博客太累,也有些舍本逐末。确实应该内容优先。发布流程如下:

在Craft写文→使用Craft导出工具导出markdown, PDF, web→将markdown导入到博客,提供web链接并鼓励访问该链接,PDF作为存档。

搭建过程参考了小球飞鱼的博客,ta基本把需要注意的点全部列出来了。

踩过的坑

未指定Hugo版本号导致报错

Cloudflare Pages报错function "warnf" not defined ,Google发现原因是Hugo版本配置错误。配置方法

Some frameworks do not use package.json to select a specific version to install during build time. By including an Environment Variable, you can define your framework’s version with one of the following:

Framework Environment Variable Name
Hugo HUGO_VERSION
Zola ZOLA_VERSION

For example, to select Hugo v0.61.0 you would add an Environment Variable named HUGO_VERSION with value 0.61.0.

Note: The value must match an existing GitHub Release with an attached asset. For example, Hugo 0.42.0 does not exist but Hugo 0.42 does exist.

一顿折腾、配制好之后才发现,原来小球飞鱼的博客上写了这一步(╯﹏╰)可恶,以后技术博客还是得认真看。

push时发生意外

根据主题的教程,将repo clone到themes文件夹后,push时会略过这个文件夹。查看隐藏文件发现,主题文件夹内包含了.git , .gitignore , .github 三个文件。悉数删去后再push就没有问题了( ´▽`)

但以上不是推荐的解决办法。可以使用submodule,便于更新主题。配置方法如下:

git submodule add https://github.com/adityatelange/hugo-PaperMod.git themes/PaperMod --depth=1
git submodule update --init --recursive # needed when you reclone your repo (submodules may not get cloned automatically)

Note: You may use --branch v5.0 to end of above command if you want to stick to specific release.

Updating theme : git submodule update --remote --merge

TODO

  • # 在blog页面显示category 换主题了,自动搞定!

  • # 评论系统 评论采用utterances,超级简单的配置步骤,10分钟就搞定了。

  • # 重写首页about 不打算写about,用undefined来define

  • # 邮件订阅 采用https://follow.it/,配置简单。

  • # 自定义rss链接(而不是index.xml) index也行吧,名字很直观

  • # 添加archive页面 按照主题说明去配置,不麻烦。

  • # 滑动条改成系统默认 换了主题,不改了🎉

总结

博客完工🎉🎉🎉如果没有显著bug应该不会再动代码了。同时,本博客的tech这一category估计也会雪藏,不知道何年何月才能弄出下一个tech文章——没技术写啥技术文+_+

Built with Hugo
Theme Stack designed by Jimmy