开发日志
开发日志 002:从 JSON 迁移到 Markdown 内容管理
把文章、项目和站点设置改为文件化内容资产,并为日常维护补齐后台工作流。
问题
博客最重要的资产是内容。继续把大量正文放在 JSON 中,会让本地撰写、版本对比、迁移和独立备份都变得笨重。因此这一阶段的目标是让文章回到最适合写作的 Markdown 文件,同时不牺牲后台维护体验。
改造内容
内容层新增 Front Matter 解析与写入能力,将站点设置、项目和文章分别落到 content 目录的对应位置。标题、日期、状态、类型、标签、摘要和项目关联等字段放在文件头部,正文使用普通 Markdown。站点读取时优先使用 Markdown,并保留旧 JSON 的兼容读取路径,避免迁移过程中出现内容断层。
同时增加 JSON 到 Markdown 的迁移脚本,把已有数据转为可维护的文件。内容写入采用临时文件再重命名的方式,并在覆盖前创建历史备份;这样即使保存过程被意外打断,也能降低文件损坏和误操作的影响。
后台工作流
后台升级为面向内容维护的工作台:可以编辑和预览 Markdown,调整文章状态与结构化字段,导入或导出内容,并进行批量导入和内容审计。图片上传增加格式限制和真实文件签名检查,避免只依赖浏览器提交的 MIME 类型。
对于前台展示,草稿内容与已发布内容被明确区分,项目文章通过 projectSlug 关联。这样一篇开发日志既可以独立阅读,也能自然归入对应项目的生命周期。
阶段反思
这次改造的核心不是“换一种文件格式”,而是把内容从应用内部数据变成维护者能够直接掌控的资产。后台继续服务于编辑效率,Markdown 则负责可读性、可移植性和长期归档。