迁移指南
从其他平台迁移到 PrimeEdge
迁移指南
本章节介绍如何从其他博客平台迁移到 PrimeEdge 主题。
从 Hexo 迁移
1. 导出内容
Hexo 的文章是 Markdown 文件,直接复制 source/_posts/ 下的文件到 Hugo 的 content/posts/ 即可。
2. 调整 Front Matter
Hexo 和 Hugo 的 Front Matter 格式基本一致,但部分字段名不同:
| Hexo | Hugo | 说明 |
|---|---|---|
categories |
categories |
相同 |
tags |
tags |
相同 |
permalink |
url |
URL 自定义 |
cover |
cover |
封面图 |
批量替换示例:
# 将 Hexo 的 permalink 替换为 Hugo 的 url
sed -i 's/^permalink:/url:/g' content/posts/*.md
3. 处理图片
Hexo 的 source/images/ 对应 Hugo 的 static/images/:
cp -r hexo-blog/source/images/* hugo-site/static/images/
4. 迁移评论
如果使用 Waline 或其他基于 URL 的评论系统,确保文章 URL 保持一致。可以在 hugo.toml 中配置 URL 格式:
[permalinks]
posts = "/:year/:month/:title/"
从 WordPress 迁移
1. 导出内容
使用 WordPress 的导出功能(工具 → 导出 → 所有内容),下载 XML 文件。
2. 转换为 Markdown
使用 wordpress-export-to-markdown 工具:
npx wordpress-export-to-markdown --input=export.xml --output=content/posts
3. 处理图片
工具会自动下载图片,检查 static/images/ 目录确保图片完整。
4. 清理格式
WordPress 的 Markdown 可能包含一些 HTML 标签,建议批量清理:
# 移除多余的 class
sed -i 's/ class="[^"]*"//g' content/posts/*.md
从其他 Hugo 主题迁移
1. 备份配置
备份现有的 hugo.toml 和自定义文件。
2. 切换主题
修改 hugo.toml:
theme = 'PrimeEdge'
3. 调整参数
对比两个主题的参数配置,将旧参数映射到新参数。PrimeEdge 的参数结构与其他主题可能不同,建议参考 基本配置。
4. 迁移自定义内容
layouts/下的自定义模板assets/css/下的自定义样式static/下的静态资源
5. 测试构建
hugo server -D
检查控制台是否有报错,逐个修复。
通用迁移建议
URL 保持一致
迁移时尽量保持 URL 不变,避免已有的外链和搜索引擎收录失效。可以通过 aliases 配置重定向:
---
title: "文章标题"
aliases:
- /old-url/
- /another-old-url/
---
批量处理工具
以下是迁移过程中可能有用的工具:
- sed/awk — 批量替换 Front Matter
- ** Pandoc** — 格式转换
- Hugo 内置命令 —
hugo convert toYAML转换 Front Matter 格式
测试清单
迁移完成后,检查以下项目:
- 首页是否正常显示
- 文章列表页是否正常
- 单篇文章页面是否正常
- 图片是否正确加载
- 评论系统是否正常工作
- 搜索功能是否可用
- RSS 订阅是否正常
- 旧 URL 是否正确重定向
常见问题
Q: 迁移后样式错乱
检查是否保留了旧主题的自定义 CSS,清除浏览器缓存后重试。
Q: 构建报错
检查 Hugo 版本是否满足主题要求,使用 Extended 版本。
Q: 图片不显示
检查图片路径是否正确,Hugo 的 static/ 目录对应站点的根路径。
评论