Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/qipihen/simple-product-export/archive/refs/heads/master.zipWordPress 内容导入导出工具
一个功能强大的 WordPress 插件,用于批量导入和导出产品、页面、文章和分类,支持自定义字段和 SEO 元数据。
项目背景
该插件最初是为 WooCommerce 产品批量导入导出而开发的工具。随着项目需求扩展,逐步增加了对 WordPress 页面、文章和分类的支持,并添加了筛选导出功能,方便用户批量管理网站内容。
主要功能
- 产品(WooCommerce)导入导出
- 页面(Page)导入导出
- 文章(Post)导入导出
- 产品分类导入导出
- 支持所有自定义字段(ACF)自动识别
- SEO 元数据同步(按当前激活插件:AIOSEO / Rank Math / Yoast)
- 按分类和关键词筛选导出
- 产品/页面/文章/分类字段级选择导出(支持最小化回导)
- 异常行 + 汇总导入日志输出
- 导入匹配策略:ID / Slug / 唯一键(可配置)
- 可选未匹配新增:支持产品、页面、文章、分类(默认关闭)
- 后台导入面板可直接填写唯一键字段(无需改代码)
- 导入支持“仅导入指定列名”(列白名单)
版本信息
当前版本: 4.7.8
本地交付文件(都在本目录)
- 插件源码:
simple-product-export.php - 最新打包:
simple-product-export-v4.7.8.zip - 通用安装包别名:
simple-product-export.zip - 文档目录:
docs/docs/GITHUB_PROJECT_OVERVIEW.md(GitHub 功能总览)docs/PRD-universal-import-export.md(通用平台产品边界)docs/plans/2026-02-13-universal-import-export-platform.md(实施计划)docs/RELEASE_NOTES_v4.7.8.mddocs/CSV_CONTRACT.mddocs/FAILURE_MATRIX.md
GitHub 文档入口
- 项目功能总览:
docs/GITHUB_PROJECT_OVERVIEW.md - 通用平台 PRD:
docs/PRD-universal-import-export.md - 通用平台实施计划:
docs/plans/2026-02-13-universal-import-export-platform.md - CSV 契约:
docs/CSV_CONTRACT.md - 常见问题矩阵:
docs/FAILURE_MATRIX.md - 自动发版工作流:
.github/workflows/release.yml
通用平台能力矩阵(v5 规划)
| 能力 | 当前状态 | 备注 |
|---|---|---|
| 任意 public post type/taxonomy 导入导出 | 进行中 | 当前已覆盖 post/page/product 与分类法主流程 |
| ACF 自动发现(post + taxonomy) | 已支持 | 包含“有定义但暂无值”的字段 |
| 字段映射向导(自动映射+手动覆盖) | 规划中 | 目标是替代固定列名依赖 |
| 匹配策略(ID/slug/唯一键) | 已支持 | 后台可配置唯一键字段,按策略回退匹配 |
| 未匹配时新增(allow_insert) | 已支持 | 四类导入均可勾选,默认关闭 |
| 流式分批导入(可续跑) | 规划中 | 当前已有行级处理与异常日志 |
| 多实体打包导出 | 已支持 | taxonomy/product/page/post 可一次 ZIP 导出 |
| 定时任务(自动导入导出) | 规划中 | 预期基于 WP Cron |
| 仅异常行 + 汇总日志 | 已支持 | 导入日志已按此策略简化 |
明确不做(当前阶段)
- 不做页面构建器级拖拽编辑器。
- 不做跨平台连接器(Shopify/Airtable/Notion)直连。
- 不做冗余的全量审计日志,只保留异常行与汇总。
安装说明
-
将
simple-product-export.php文件上传到 WordPress 插件目录wp-content/plugins/simple-product-export/ -
在 WordPress 后台启用插件
-
在左侧菜单找到"导入导出工具"
使用指南
导出内容
- 进入"导入导出工具"页面
- 展开需要导出的内容类型
- (可选)设置筛选条件:
- 选择分类(多选)
- 输入关键词搜索
- 点击"导出"按钮下载 CSV 文件
导入内容
- 导出 CSV 文件作为模板
- 使用 Excel 或文本编辑器编辑 CSV 文件
- 保存为 UTF-8 编码的 CSV 格式
- 在"导入"区域选择编辑后的 CSV 文件
- 点击"导入"按钮
注意: 导入时建议先备份数据库。
CSV 格式说明
产品分类 CSV 格式
| 列名 | 说明 | 示例 |
|---|---|---|
| ID | 分类 ID | 21 |
| 标题/名称 | 分类名称 | AC Portable EV Chargers |
| Slug | URL 别名(支持 parent/child 格式) | portable-ev-chargers/gem-series |
| 描述 | 分类描述 | Experience charging freedom... |
| 父分类 ID | 父分类的 ID | 21 |
| Meta Title | SEO 标题 | Portable EV Charger Manufacturer |
| Meta Description | SEO 描述 | Experience charging freedom... |
| order | 排序顺序 | 2 |
| order_url | 保留字段 | - |
Slug 路径格式支持
从 v4.2.1 开始,插件支持层级 slug 格式:
portable-ev-charger/gem-series
插件会自动提取最后一部分作为实际 slug,即 gem-series。
版本历史
v4.7.8 (2026-02-13)
- 新增产品/页面/文章导出字段选择器(列级导出)
- 新增产品/页面/文章/分类导入列白名单(仅按指定列名写入)
- 导入结果会提示未命中的列名,便于排查列名拼写
v4.7.7 (2026-02-13)
- 新增导入匹配模板应用逻辑(产品/页面/文章/分类)
- 新增导入模板保存后自动回填与选择同步能力
- 修复分类字段首屏预加载开销,改为仅按当前 taxonomy 异步加载
- 新增 GitHub Actions 自动 Release(按
v*tag 自动打包并发布)
v4.7.6 (2026-02-12)
- 新增 ZIP/XLSX 误传检测(
PK\x03\x04文件头) - 增强分类 SEO 同步与回读验证(AIOSEO / Rank Math / Yoast)
- 增强分类导入调试日志(列索引、逐行处理信息)
- 优化 ACF 优先写入与辅助 URL 列过滤逻辑
v4.3.1 (2026-02-10)
- 增强调试信息输出,显示所有 term_meta keys
- 验证 AIOSEO 数据存储结果
- 支持多种 AIOSEO 格式同时存储
v4.3.0 (2026-02-10)
- 添加
flush_rewrite_rules()刷新 permalink 结构 - 使 slug 更改立即生效
v4.2.1 (2026-02-10)
- 支持 slug 路径格式(parent/child)
- 自动提取子分类 slug
v4.2.0 (2026-02-10)
- 修复 AIOSEO 4.0+ 分类元数据格式
- 支持
aioseo_term数组格式
v4.1.7 (2026-02-10)
- 修复 CSV ID 中的 BOM 字符问题
- 使用正则表达式提取纯数字 ID
- 添加详细调试信息输出
v4.1.1 (2026-02-10)
- 修复分类导入列匹配问题
- 优先匹配"标题"列,回退到"名称"列
- 添加分类 AIOSEO 元字段处理
v4.1.0 (2026-02-10)
- 添加筛选 UI 界面
- 支持按分类和关键词筛选导出
- 使用纯 JavaScript 实现展开/折叠功能
v4.0.0 (2026-02-10)
- 添加页面和文章的导入导出功能
- 更改菜单为顶级菜单"导入导出工具"
- 添加页面/文章的 AIOSEO 支持
技术特性
支持的自定义字段
插件会自动扫描并导出所有自定义字段(不包含 _ 和 wp_ 前缀的字段除外),包括:
- ACF (Advanced Custom Fields) 字段
- Yoast SEO 字段
- All In One SEO 字段
- 其他第三方插件字段
AIOSEO 支持
插件支持 All In One SEO 插件的多种格式:
文章/页面格式:
_aioseo_title- SEO 标题_aioseo_description- SEO 描述_aioseo_keywords- SEO 关键词
分类格式:
aioseo_term- AIOSEO 4.0+ 数组格式_aioseo_title- 旧版标题格式_aioseop_title- 更旧版标题格式
BOM 字符处理
从 v4.1.7 开始,插件使用正则表达式处理 CSV 中的 BOM(字节顺序标记)字符:
$cat_id = preg_replace('/[^0-9]/', '', $cat_id);
这确保了即使 CSV 文件包含 UTF-8 BOM 标记,ID 也能正确识别。
已知问题
1. URL 更新可能不立即生效
问题: 导入后修改的 URL 在前端可能仍显示旧 URL
可能原因:
- 浏览器缓存
- WordPress 缓存插件
- CDN 缓存
- Permalink 未刷新
解决方案:
- 清除浏览器缓存
- 清除 WordPress 缓存插件缓存
- 刷新 Permalink 设置(设置 → 固定链接 → 保存更改)
- 插件已添加
flush_rewrite_rules()调用
2. Meta Title 更新可能不显示
问题: 导入后 Meta Title 在前端未更新
调试方法:
- 查看导入后的调试信息
- 检查
aioseo_term是否正确存储 - 验证数据库中的
wp_termmeta表
存储格式:
// AIOSEO 4.0+ 格式
update_term_meta($cat_id, 'aioseo_term', [
'title' => 'Your Meta Title',
'description' => 'Your Meta Description'
]);
示例文件
项目包含一个示例 CSV 文件:product-categories-updated-v6.csv
该文件展示了完整的产品分类结构,包括:
- 主分类(Products)
- 子分类(AC Portable EV Chargers, AC Wallbox Chargers 等)
- 三级分类(Gem Series, Ticool Series 等)
技术栈
- PHP 7.4+
- WordPress 5.0+
- WooCommerce 3.0+(产品功能需要)
- All In One SEO 4.0+(SEO 功能建议)
贡献
欢迎提交 Issue 和 Pull Request。
许可证
GPL v2 or later
作者
zhangkun