Migrating from WordPress
Export a WordPress WXR file from Tools → Export, upload it in Settings → Import Site, enter your live public site URL, scan to preview entities, then confirm import—use the native XML export, not All-in-One WP Migration .wpress archives.
ArtInStack reads standard WordPress eXtended RSS (WXR) files—the same .xml export WordPress has shipped for years. You do not need a paid migration plugin.
Prerequisites
- WordPress administrator access on the site you are leaving.
- Workspace owner login on ArtInStack (team members cannot import).
- Your public site URL (for example
https://www.example.com) — required so the importer can download images during the background job. - Enough storage on your plan for imported media (the scan shows an advisory estimate).
Step 1: Export from WordPress (correct format)
Use the built-in exporter—not All-in-One WP Migration .wpress files (those bundle database dumps ArtInStack does not import).
- Log into WordPress as an Administrator.
- Go to Tools → Export.
- Under Choose what to export, select All content for a full-site move, or choose Posts, Pages, or Media for a smaller export.
- Click Download Export File.
- Keep the file as
.xml— do not zip it unless your browser does so automatically (both work).
All-in-One WP Migration /
.wpress: Not supported. Re-export with Tools → Export instead.WordPress Importer plugin: That plugin is for importing into WordPress, not exporting out. For leaving WordPress, use Tools → Export only.
Export strategy: full vs selective
| Approach | When to use it |
|---|---|
| All content (recommended first run) | You want pages, posts, media, and portfolio CPTs in one scan; best for understanding total scope. |
| Pages only | You are migrating marketing pages first and will handle the blog later. |
| Posts only | Blog archive move after pages are live. |
| Media only | Rare—usually combined with pages/posts so attachments stay linked. |
You can run multiple imports over time. The entity picker lets you choose exactly which pages, posts, and media rows to confirm on each run. Items already imported are flagged so you do not duplicate work.
Step 2: Scan in ArtInStack
- Open Settings → Import Site.
- Select WordPress (WXR).
- Click Choose export… and upload your
.xml, or pick a file already stored from a previous scan. - Enter Public site URL — your live WordPress domain visitors use today.
- Click Scan import.
Scanning parses the file and shows counts for pages, posts, media, portfolios, and more. No content is written yet.
Scan status messages
| Message | Meaning |
|---|---|
| Complete export detected | Attachment rows are in the file; a live WordPress connection may not be needed. |
| Live WordPress REST available | ArtInStack can hydrate missing gallery metadata from your public site. |
| Public site URL required | Add or correct your public URL and scan again. |
| Live WordPress not reachable | The export references attachments not in the file and REST is unavailable—re-export with All content, bring the old site online temporarily, or import structure-only. |
Headless / Jamstack WordPress
If your public site does not expose /wp-json/ but you have a private API gateway, expand Advanced: headless WordPress, enter the gateway URL, and complete gateway sign-in when prompted after scan. Media files are still fetched from your public site URL.
Step 3: Select content and confirm
- Review each row: Pages, Posts, Media, Portfolios (labels match your export).
- Use Choose pages… (or posts/media) to pick individual items, or toggle Import all content.
- Check the storage estimate and attachment resolution counts.
- Click Confirm import (N).
A background job downloads images, writes entities, and records redirects. Progress appears on the same screen; you can open Reports when it finishes.
What is not imported
ArtInStack skips content that does not map to the platform model:
| WordPress content | Why it is skipped | What to do instead |
|---|---|---|
| WooCommerce products, orders, coupons | Commerce model differs | Create Products in ArtInStack; connect Stripe |
| Cart, checkout, my-account shop pages | Platform checkout is native | Build store pages with Products blocks |
| Theme builder globals (Tatsu headers/footers/sections) | Site chrome is configured in ArtInStack | Header, footer, and navigation |
| Unsupported custom post types | No target collection | Recreate manually or contact support |
If your export contains only WooCommerce or builder globals, the importer shows a clear banner and blocks confirm until you re-export with posts, pages, or media.
What happens during import
- Pages — converted to ArtInStack page layouts where possible; complex legacy builder markup may import as a readable snapshot you can refine in the page editor.
- Posts — written to Posts with slugs under
/blog/…. - Media — fetched from URLs in the export (your public site, CDNs, or dated upload paths), then stored in Media.
- Portfolios — portfolio custom post types become Portfolio collections linked to imported portfolio pages.
- Redirects — legacy paths recorded for automatic 301 routing.
Verifying your setup
- Scan completes without an “unsupported export” blocker.
- Preview lists the pages and posts you expect.
- Confirm import finishes with status Completed on the Reports tab.
- Open imported pages in Pages, publish one, and preview on your workspace URL.
- Download the JSON report and check for asset warnings (see After your import).
Troubleshooting and common pitfalls
| Problem | Likely cause | Fix |
|---|---|---|
| Upload rejected or empty preview | .wpress or non-WXR file | Re-export via Tools → Export |
| Many assets failed | Images only on a private/local URL | Use your public domain in the export and public site URL field; local dev URLs are not reachable from production |
| Gallery attachments unresolved | Partial export | Re-export All content or keep WordPress online during import |
| “WooCommerce export” banner | Export contains shop data only | Export posts/pages instead |
| Import button disabled | Missing public URL or gateway sign-in | Complete the scan warning steps first |
