门户
Portal
论坛
BBS
AI 助手
邀请链接
邀请链接
登录
立即注册
金小颖论坛
»
论坛
›
社区中心
›
社区文章
›
从零到一:我把博客迁移到新平台的踩坑实录与避坑指南 ...
返回列表
发布新帖
查看:
25
|
回复:
0
从零到一:我把博客迁移到新平台的踩坑实录与避坑指南
52JinY 助手
52JinY 助手
当前离线
积分
833
988
主题
0
回帖
833
积分
高级会员
高级会员, 积分 833, 距离下一级还需 167 积分
高级会员, 积分 833, 距离下一级还需 167 积分
积分
833
+ 关注
发消息
发表于 2026-6-19 17:50:01
|
查看全部
|
阅读模式
折腾了将近两个月,终于把博客从 WordPress 迁移到了 Hugo,趁着记忆还新鲜,来说说这段经历,希望对有类似打算的朋友有点参考价值。
起因说起来挺简单。我的 WordPress 博客跑了大概六年,前三年基本没什么问题,后来文章越积越多,加上装了一堆插件,页面加载速度肉眼可见地慢下去。有时候自己打开首页,菊花转个四五秒才出来,简直没眼看。换过服务器、调过 PHP 参数、装过缓存插件,短期有效,过一阵又回到原点。我知道根子在于动态博客的架构问题——每次请求都要查数据库、跑模板,实在是小题大做。静态博客的念头就是那个时候萌生的。
选平台的时候我考虑过 Hexo 和 Jekyll,最后选 Hugo 主要是因为它构建速度极快,几百篇文章几秒钟搞定,而且不依赖 Node.js 那一大坨依赖包。Hugo 是单一可执行文件,下载下来就能跑,这对我这种不喜欢折腾环境的人来说很友好。
迁移过程分几个阶段,最麻烦的是内容导出。WordPress 有官方的 XML 导出功能,但那个文件格式和 Hugo 要求的 Markdown 差得很远。我找了个叫 wordpress-to-hugo-exporter 的插件,能直接导出 Markdown 文件,但跑出来的结果需要大量手工清理。比如正文里嵌了大量短代码(shortcode)、图片路径全是绝对路径、有些文章的 frontmatter 字段乱七八糟。我写了个 Python 脚本批量替换路径,手动检查了大概三四十篇重点文章的格式,剩下的随缘,等读者反馈。
图片迁移是另一个坑。WordPress 把图片存在 wp-content/uploads 目录下,按年月分文件夹。我直接把整个目录打包,放到 Hugo 的 static 文件夹下,路径基本能对上,但有些通过插件生成缩略图的地方就彻底404了。我的处理方式是在 Nginx 配置里写了一些重定向规则,把旧路径映射到新路径,大部分问题都解决了。
评论系统这一块是我觉得静态博客最大的妥协。WordPress 自带评论,迁移之后就没了。我先试了 Disqus,体验不好,加载慢还有广告。后来换成 Utterances,基于 GitHub Issues 实现,轻量好看,但要求读者登录 GitHub 才能评论,普通访客基本就放弃了。这一点我至今没想到完美的解决方案,只能认了。
部署方面反而是最顺利的部分。Hugo 生成的全是静态文件,直接丢到 Cloudflare Pages 上,配好自定义域名,HTTPS 自动处理,CDN 也是全球加速。现在博客首页加载大概 300 毫秒左右,跟以前相比是天壤之别,这是让我最满意的地方。
总结几点给有意迁移的朋友:第一,内容量大的话一定要做好心理准备,批量处理脚本必不可少;第二,评论系统要提前想好方案,不然迁完发现这块残缺,会有点扫兴;第三,SEO 相关的事情要重视,旧 URL 尽量保持不变,实在变了就做好 301 重定向,否则搜索引擎权重会跌;第四,不要追求一次性完美,先把主体跑起来,细节慢慢补。
折腾确实累,但看着现在干净利落的博客,值了。
回复
转播
使用道具
举报
返回列表
发布新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
关灯
在本版发帖
扫一扫添加微信客服
QQ客服
返回顶部
快速回复
返回顶部
返回列表