我的站点主题——zero

发布时间:2026-09-14 09:53   浏览量:39
阿伏伽德罗的云端
阿伏伽德罗常数定义了一个 mol 里有 6.022 × 10²³ 个粒子——我也希望这个站点能像 mol 一样,容纳足够多细小的、真实的、不值得被单独拿出来说的东西。
我的个人介绍里说过,我的技术很烂,水平大概就是“熟练使用 Ctrl+C/V”,每次看到别人写的那些精致优雅的代码,都会默默感叹一句“这才是专业”。但没办法,我套了不少主题,但总有点地方和我想要的有些不同,有的是布局、有的是功能、有的是风格,和我想要的总是差一点。我试着修改一些主题,但发现工作量也不小,所以就自己做了这个极简风格的主题, Zero。
Zero 是给我自己的网站做的。一开始也没什么宏伟计划,就是觉得,我想要一个安静的、不那么吵的地方,放我那些飘来飘去的念头。所以主题名字叫 Zero,从零开始,回到本质。不追求什么功能都有,只求我自己用着舒服。
既然是自己做的,那每个功能背后多少都有点我自己的理由。下面我就随便聊聊,想到哪说到哪。如果你正好也在用 Hugo,或者想搭个自己的小站,也许能有点参考。
首页:先看到一句话,再看到文章
我不太喜欢一打开博客就是密密麻麻的文章列表,像走进一个堆满杂物的房间。所以 Zero 的默认首页是一个单独的 index 页面,上面可以放几句话,也可以更改背景图,我自己放的是偶尔想到的诗句。它可以轮播,也可以静静待着。配置在 params.toml 里,poems 是一个数组,你想放什么就放什么。
访客进来先看到一句话,然后点“进入”或者“背景图片”,才会跳到真正的文章列表页。我知道这个设计有点非主流,但我觉得挺好的,像一个缓冲,不急着让人看东西。如果你不喜欢,把 index 改掉或者删掉诗词配置就行。
导航栏就是很普通的菜单,没有轮播,没有诗词、没有花里胡哨的功能,只有最基础的。
暗色/亮色:有按钮,但你可以关掉
主题自带一个暗色/亮色切换按钮,一般在右上角。点一下,整个站点的颜色就变了,而且会用 localStorage 记住你的选择,下次来还是你选的那个。我自己是习惯用暗色的,晚上看舒服点。
如果你觉得这个按钮多余,可以在 params.toml 的 [params.themeSwitch] 里把 enable 改成 false。关掉之后,站点会跟着系统的 prefers-color-scheme 走,系统暗它就暗,系统亮它就亮,完全无感。两种方式我都留着,你选自己喜欢的就行。
文章页:就是正常文章
文章页没什么特别的,该有的都有。中英文分别统计字数,阅读时间按中文每分钟 300 字、英文每分钟 200 词估算,显示在文章列表和文章页上。数学公式用 KaTeX 渲染,需要在 params.toml 里把 math 打开,然后在文章 front matter 里加 math: true,这样只有用到公式的文章才会加载脚本,不会拖慢其他页面。
标签云页面我做成了一种轻飘飘的弹幕效果,标签缓缓飘过,鼠标悬停会暂停,方便点击。速度、密度都可以调。归档页面按年月分组,倒序列出所有文章,方便回头看自己都写了些什么。
“时刻”:一个发碎碎念的地方
“时刻”是我自己很常用的页面。有时候不想写长文,就想发一句话、一张图、一个链接,于是就有了这个,就像一个网页版的朋友圈。它有两种模式,在 params.toml 的 [params.moments] 里选。
在线模式借助评论系统来实现,你发一条内容,通过评论系统的 API 提交,页面读取展示。好处是不用重新生成站点,随时随地能发。坏处是依赖第三方,而且评论系统本来不是干这个的,样式得自己调。
离线模式就是老老实实在 content/moments 下建 Markdown 文件,每篇一个“时刻”。完全静态,不依赖任何人,适合我这种有时候断网的人。缺点就是每次发都得重新生成一次站点。
评论系统:四种,自己挑
评论系统我集成了 Waline、Twikoo、Artalk 和 Giscus 四种。没什么特别的原因,就是我自己折腾过,觉得各有各的好。
Waline 功能最全,但要自己部署服务端;Twikoo 也挺全,部署简单点;Artalk 轻量,后端是 Go 写的;Giscus 最省事,直接用 GitHub Discussions,零部署。在 params.toml 的 [params.comments] 里把 provider 改成对应的名字,再填上配置就行。

因为我不使用Artalk评论系统,所以这个我没有测试,我也不知道最终效果如何。

一些零零碎碎的小东西


语言切换:支持中英双语,但切换按钮默认不显示,需要在 params.toml 里把 [params.languageSwitch] 的 enable 打开。打开后点击按钮会在客户端切换文字,不刷新页面。如果你只写一种语言,关着就好。


文章赞赏:文章底部可以放赞赏码,默认关闭,想开就开。


隐私政策页:自带一个模板,你可以写写自己站点收集了什么数据、怎么处理评论之类的。认真做站的话,这个页面还挺必要的。


页脚链接和社交图标:可以自己加链接、加图标,GitHub、Twitter、Mastodon、邮箱都支持。


宝贝回家:这个只在 404 页面出现。当有人访问不存在的链接时,除了提示“页面找不到”,还会轮播失踪儿童的信息,帮忙扩散一下。我觉得 404 页面本来就是个死胡同,放点有意义的东西挺好。配置在 [params.babyComeHome] 里,不想用就关掉。


最后说两句
Zero 的代码在 GitHub 上开源,MIT 许可证,仓库里有完整的安装说明和配置文档。演示站点就是当前的站点。
我这个人比较懒,更新也不勤快。有问题随时说,我不一定会回,但会看,会记着,有空就改。Zero 不是什么大项目,它只是我给自己做的一件合身的衣裳。如果你穿着也舒服,那就拿去吧。


本文由AI生成,部分内容可能不够正确

查看原文

该站点最新相关文章