WordPress 数据迁移指引
介绍
本指引提供了从 WordPress 迁移至 Halo 2.x 的方案。
安装迁移插件
在 Halo 后台的应用市场中搜索 站点迁移,安装并启用。
注意事项
- 通过 WordPress 后台导出的 WXR 文件(XML)进行迁移。
- 当前开发与回归测试主要基于仓库中的 WordPress
6.9.x导出样例,WXR 版本为1.2。 - 当前主要支持迁移 文章、页面、分类、标签、评论、附件。部分插件或主题生成的自定义内容类型可能不会导入。
- 如果 WXR 中包含作者邮箱,导入时会优先按邮箱匹配现有 Halo 用户;未匹配到时会自动创建
guest用户,以尽量保留内容归属。
准备工作
-
在 WordPress 管理后台的 工具 -> 导出 菜单中,选择导出 所有内容,下载 WXR XML 文件。详细说明可参考 WordPress 支持页面。

-
建议同时从服务器备份
wp-content/uploads目录,作为附件迁移备用(可选)。 -
建议先在本地环境完成一轮完整导入测试,再考虑在生产环境执行。这样更方便快速重试和定位问题,也能避免线上因频繁请求后端、上传附件而出现导入变慢或部分失败;本地验证通过后,还可以结合 Halo 的备份恢复能力更快完成线上恢复或回滚。
执行迁移
-
点击左侧菜单的迁移进入迁移页面。
-
在选择渠道步骤中,选择 WordPress,点击下一步。
-
选择从 WordPress 后台导出的 WXR 文件(XML 格式)。

-
等待系统解析文章、页面、分类、标签、评论、作者归属及附件引用。
-
如果检测到本地附件:
-
选择 上传到 Halo 时,可选择 WordPress 站点根目录、
wp-content目录、uploads目录,或包含这些目录的任意上级目录。 -
选择 手动迁移 时:
需要先将备份的
uploads目录中的所有文件(不包含 uploads 目录)放到{Halo 工作目录}/attachments/migrate-from-wp中。然后在工作目录新建一个
application.yaml,写入以下内容:halo: attachment: resource-mappings: - pathPattern: /wp-content/uploads/** locations: - migrate-from-wp

-
-
确认数据概览无误后,进入下一步并开始迁移。

-
迁移完成后,建议优先抽样检查文章中的图片、封面图和评论归属是否符合预期。