WXR / WordPress migration
Import WordPress exports with the migration pack (Toolbox tools only). This page is a short pointer — the full contract (entities, shortcodes, nav defaults, greenfield vs import) lives in repository docs/MIGRATION-IMPORT.md.
When to use it
- You have a WXR (WordPress eXtended RSS) export
- You want posts/pages/media into a non-live Dropbits site first, then compose home/nav
Do not mix playground create_demo into the WXR apply happy path. seed-minimal gives shell home + main_nav; compose afterward.
Minimal operator sequence
From dropbits/ (replace blog / paths):
export DROPBITS_SITE=blog
./bin/site migrate
./bin/site seed-minimal
./bin/site pack-install migration
./bin/site enable migration
# set site_extra.wxr_import_roots (must include the WXR directory)
./bin/site tool-run import_wxr_plan --role=admin --json='{"wxr_path":"export.xml"}'
./bin/site tool-run import_wxr_apply --role=admin \
--json='{"wxr_path":"export.xml","limit":50,"shortcode_preset":"hints"}'
# then bootstrap / media / publish_wp_pages / suggest_nav — see MIGRATION-IMPORT
Defaults worth knowing (also in TOOLBOX / MIGRATION-IMPORT):
publish_wp_pages:patch_nav=false,home_strategy=skipby default- Prefer
suggest_navover dumping every page intomain_nav - Shortcode preset
hints(default) orstrip— never leave raw Divi shortcodes in bodies
Where to read more
| Doc | Role |
|---|---|
| docs/MIGRATION-IMPORT.md | Full import contract |
| docs/MANY-RELATION.md | Category M:N shapes |
| Packs (CLI + Admin) | Install / enable migration |