First post

#changelog#tech

把 WordPress 推倒,从一段 cd pamperfish-site 开始重写。

距离上一次更新 blog 已经过去几个月了。

这段时间里我一直没动我那个 WordPress 站点 —— 不是没东西写,是每次打开后台、看到那一堆主题 / 插件 / 数据库面板,就觉得这不是我想要的”个人网站”。它太重了,重得我不敢往里面塞自己的东西。所以与其继续维护一个不喜欢的站,不如从零开始做一个我喜欢的。

这篇 First post 就是这次重做的起点 —— 也作为整个建站过程的一个备忘。

为什么要换掉 WordPress

简单一句话:它给我的是一个”博客系统”,但我想要的是”我的网站”。

WordPress 的视觉永远绕不过它的主题机制 —— 你能选的只是别人设计好的盒子。每次想动一点细节,要么写 PHP 子主题、要么塞自定义 CSS 注入器,每一步都在和它的渲染流程打架。我想要的是:所有像素都由我决定,每一处留白都是我自己选的。

加上 WordPress 永远要跑数据库 + PHP + 后台登录这三件套 —— 对一个每年发不到 10 篇文章的个人站点来说,这套架构属于杀鸡用牛刀。

新架构

最后选了 Astro + Markdown 的组合。理由:

  • 文章就是本地的 .md 文件,写完 git push 就上线,没有数据库
  • 输出纯静态 HTML,部署只是把一个文件夹丢到 Nginx 后面
  • 视觉上从空白开始,不依赖任何模板
  • 想加 React / Vue / 任何框架的零碎组件都可以,但默认零 JS

部署仍然是我自己的服务器(雨云,64.83.1.252,跑着 Hermes Agent 那台)。三个子站点会拆成:

  • pamperfish.xyz —— 主入口,艺术封面页
  • tech.pamperfish.xyz —— 你正在看的这个,记技术、数学、工具
  • art.pamperfish.xyz —— 视觉与日常的记录

视觉这块花了多少功夫

很多。比预想的多。

最早我让 Claude 直接生成了一版 “工程师极简黑色风”,结果做出来满屏都是 $ shell prompt 和 // 注释 这种装饰 —— 远看像 IDE 不像 blog。后来意识到我喜欢的 hong97.ltd 那种”高级简约”根本不是”程序员风”,是产品设计师式的克制。

走了几个版本:

  • v0.1 三种字体混搭 + 装饰满天飞 —— 推翻
  • v0.2 全等宽字 + Catppuccin 八色配色 —— 太花,推翻
  • v0.3 衬线 + sans 双字体 + 黑白灰 —— 字体过瘦不喜欢
  • v0.4 Segoe UI 全局 + 死黑 #000 + 居中 —— 总算对了
  • v0.5 ~ v0.7 Hero 打字动画 / 登录系统 / 主题语言切换 / 内容填充

期间陆续做了:

  • 首页是一个全屏 Hero,11 种语言循环打字 + 删除(登录后会在末尾追加 Hello, {你的名字} 参与循环)
  • 导航栏左 logo 右链接 + 虚线分隔的登录入口 + 主题/语言切换
  • Blog 列表参考 hong97 的”年份在标题左边”双列布局
  • 文章详情页有 hero 大图 + 左侧浮动目录跟随阅读高亮
  • 通过 Clerk 接入了真正的登录系统,cookie 设在顶级域,三站共享

接下来

  • art 站搭起来 —— 完全不同的视觉系统,可能走 imakashi / photo.imakashi 的路子
  • landing 主入口页 —— 一个艺术封面式的入口,引导到两个子站
  • 部署上线,让 tech.pamperfish.xyz 真正可访问

如果你正在看这篇文章,欢迎从导航栏右边登录,让 Hero 的最后一句变成 “Hello, 你的名字”。