维护记录

完成的工作

  • 精简博客文章 tags 体系:采用方案 A(激进精简),将 content/posts/ 下 218 篇文章的 13 个 tag 收敛为 7 个。✅
    • 合并到 开发工具分布式建站Algorithm(子主题归并)
    • 新增 杂谈金钱新闻文字(单例容纳)
    • 清理重复条目:3 篇文章的 tags 数组中存在同一 tag 多次出现的情况,强制去重
    • 批量执行脚本:/tmp/consolidate-tags.mjs(Node v24,原地编辑 frontmatter 的 tags 行,其余内容保持不变)
    • 改动文件数:14 篇(占 218 篇的 6.4%)
    • 最终分布:日志 95 / 开发 49 / 思考 40 / 软路由 14 / 学习 10 / 安全 6 / 杂谈 3

遇到的问题

  • 我的初步 “+9” 净变化预测在数学上出现 ±1 偏差,实际 开发 为 +4 而非 +9,原因是 20260312[0443ef].md 同时拥有 建站工具,dedup 后只贡献 1 个 开发 出现次数;同样原本预测里的边界情况需用真实全局计数复核。⚠️ - 不影响最终结果,仅是粗算与精算的偏差。

下次建议

  • 新增文章时建议优先复用现有 7 个 tag,仅在确有跨类目需求时再讨论是否扩展。
  • scripts/ 下考虑沉淀 consolidate-tags.mjs 为可重入工具,便于后续调整 tag 体系时一键重跑 + 校验;当前实现还停留在 /tmp/ 里,无版本控制。

完成的工作 (续)

  • 修复 layouts/partials/custom_footer.html 的渲染范围:之前 1 行 stub 把 layouts/partials/footer.html 转交给 custom_footer.html,而后者只塞了 Cloudflare Analytics,等于屏蔽了 PaperMod 的全部 footer 功能,包括回顶按钮、代码复制按钮、主题切换 JS、菜单滚动位置记忆、版权/Powered by 致谢等。✅
  • 恢复 PaperMod 原版 _partials/footer.html 的全部内容:版权/年份、Powered by Hugo & PaperMod#top-link 锚点和 SVG、滚动监听 JS、平滑滚动 JS、#theme-toggle JS、copy-code 按钮 JS;同时保留 PaperMod 的 {{- partial "extend_footer.html" . }} 钩子。✅
  • 保留 Cloudflare Web Analytics:在新版的 custom_footer.html 末尾保留原有的 {{- with site.Params.cloudflareAnalytics.token }} 注入逻辑,并 hugo --minify 构建后用 grep 校验 id=top-link / copy-code / Powered by / class=footer / menu-scroll / cf-beacon 在生成的 public/posts/.../index.html 中重新出现。✅

遇到的问题 (续)

  • Hugo minifier 会把 <footer class="footer"> 压缩成 <footer class=footer>,第一次 grep "class=\"footer\"" 给出 0 命中导致误判;改为匹配 class=footer 即可。无功能影响。⚠️

下次建议 (续)

  • 当前 custom_footer.html--ultra-compact 等价于"复制粘贴 PaperMod 原内容",会带来一个问题:PaperMod 子模块后续升级 footer 时此处不会自动同步。如果想跟进官方 footer 改进,可以改用 layouts/partials/footer.html{{ block "footer" . }}{{ end }} 或类似模式避免硬编码;短期内(PaperMod 不会有大改)维持现状即可。