Migrate Your WordPress Blog to Shopify, Every Permalink Redirected
To migrate a WordPress blog to Shopify, export it from Tools > Export as a WXR (.xml) file holding posts, pages, comments, categories, tags and authors. Shopify has no screen that imports that file, so posts go in through an app or the Blog API. Categories become tags, images are re-uploaded, and every old permalink gets a 301. Running WooCommerce too? That is a store migration as well.
Updated 22 October 2026 · Bhavesh Barot, Founder


A WordPress Blog in Four Numbers
WordPress is generous at export and Shopify is strict at import, so the work sits in between. FactoryJet is a registered Shopify Partner that has served 500+ businesses since 2014, and we build both sides: WordPress and Shopify. You see your own posts running on a Shopify demo before you sign.
Posts, pages, custom post types, comments, custom fields, categories, tags, taxonomies and users. Source
Plain permalinks are the install default, so older blogs often carry /?p=123 links. Source
Shopify organizes posts with tags, so the WordPress category tree flattens. Source
Standard plans hold 100,000 redirects; Shopify Plus holds 20,000,000. Source
Where WordPress Blog Moves Break
The export button works fine. The trouble starts when hundreds of posts, their images and their old URLs have to fit Shopify’s simpler blog.
Shopify Has No WXR Import Button
WordPress hands you one WXR file. Shopify’s migration notes point to apps or the Blog API for blog posts, not an upload screen.
We parse the WXR file, clean each post’s HTML and post it through the Blog API with its original date, excerpt and slug.
Categories and Authors Do Not Map One to One
Shopify posts use tags, not a category tree, and an author must be the store owner or a staff account with admin access.
Categories become tags or separate blogs, and we agree with you which writers get staff accounts and which posts carry a byline line.
Images Still Live on the WordPress Host
The WXR file references images in /wp-content/uploads by URL. Close the host and every image in every post breaks.
We download each image, upload it to Shopify, and rewrite the image links inside every post before it is published.
Old Permalinks Come in Five Shapes
Date-based, ?p= query, category, tag and author URLs all need a target, and Shopify warns that query-string redirects might not work as expected.
Every permalink shape gets a row in the 301 map, and ?p= links are handled at the DNS or CDN layer if Shopify’s tool cannot catch them.
Five things to check in WordPress first
- Check Settings > Permalinks and note which structure you use, plus any category or tag base.
- Decide whether WooCommerce is part of the move or the blog alone.
- List every plugin that changes post output: SEO, shortcodes, page builders, related posts.
- List every writer who needs to appear as an author on Shopify.
- Note where your email is hosted, since many WordPress hosts also run the mailbox.
From WXR File to Shopify Articles
Posts and pages from the WXR export into the Blog API, images out of /wp-content/uploads, categories into tags, and a 301 for every permalink shape.
Layer 1: The Modern Storefront (Fast, Flexible & Easy to Edit)
What your customers actually see and use. Loads in under 1 second and lets your marketing team edit banners in minutes without coding.
Global Online Store
Super-fast mobile shopping with instant checkout and multi-currency pricing across the world.
Wholesale & B2B Portal
Wholesale buyers get their custom negotiated prices, volume tiers, and Net 30 invoices on one login.
Retail Stores & POS
One unified inventory and customer account shared between your physical stores and website.
AI Search Optimization
Structured so ChatGPT, Perplexity, and Google AI Overviews can read and cite your product pages.
Layer 2: The Smart Event Bus (The Highway Between Systems)
Moves every purchase, stock change and price update between your systems without loading your servers.
Durable Safety Queues
If your ERP ever undergoes scheduled maintenance, orders wait safely in queue and sync the second it comes back.
Automatic Data Translator
Converts Shopify orders and products into the exact format your ERP understands, without manual re-keying.
Duplicate Protection
Prevents accidental double charges or double order bookings even during massive Black Friday traffic spikes.
Layer 3: Your Back-Office Systems (Completely Untouched)
You do not have to replace your ERP, warehouse software, or accounting tools. They stay your single source of truth.
NetSuite / SAP ERP
General ledger, corporate finance, taxes, and purchase orders balance automatically.
PIM (Product Master)
Akeneo, Pimcore, or Salsify managing 100k+ SKU specs and image galleries.
Warehouse & 3PL (WMS)
Manhattan, Deposco, or ShipBob printing packing slips and tracking numbers live.
Salesforce CRM / Klaviyo
Keep your customer support tickets and marketing automations running without interruption.
Staged
Cutover Rehearsed First
Planned
Cutover Window Agreed With You
1-to-1
301 Redirect Map
Yours
Code and Data Ownership
Reviewing Your WordPress Contract or Replatforming?
Talk directly with founder Bhavesh Barot (no junior salespeople). We review your custom cartridges, ERP synchronization requirements, and deliver a transparent fixed-price roadmap before any commitment.
WordPress Content Next to Its Shopify Home
Each row cites the WordPress.org or Shopify page we read on 22 October 2026. Where a row says “we”, it describes our method, not a vendor rule.
| Data | What WordPress exports | Where it goes in Shopify | Source (checked 22 Oct 2026) |
|---|---|---|---|
| Export file | One WXR (.xml) file from Tools > Export, filtered by category, author, date range or status. | No admin import screen. Blogs move by migration app or Blog API. | WordPress.org: Tools Export screen; Shopify Help: Migration considerations |
| Posts | Posts, custom post types and custom fields (where SEO plugins keep titles). | Articles at /blogs/{blog-name}/{handle}, each with a search engine listing. | WordPress.org: Tools Export screen; Shopify Dev: blog object |
| Categories and tags | Categories, tags and custom taxonomies. | Tags organize posts into categories or subjects; extra blogs can be created. | WordPress.org: Tools Export screen; Shopify Help: Working with blog posts |
| Authors | Users are included in the export. | Author must be the store owner or a staff member with admin access. | WordPress.org: Tools Export screen; Shopify Help: Working with blog posts |
| Pages | Pages are included in the export. | Single pages such as shipping or refund policies can usually be pasted in. | Shopify Help: Migration considerations |
| Permalinks | Plain /?p=N is the install default; Day and name, Month and name, Numeric, Post name or Custom. Category and tag bases cannot be removed. | Up to 100,000 redirects (20,000,000 on Plus). Query-string URLs might not redirect as expected. | WordPress.org: Customize permalinks; Shopify Help: URL redirects |
| Members | Site users, if any are shoppers or subscribers. | Customer CSV import. Passwords cannot be migrated; customers get an invite. | Shopify Help: Import customers |
| Keep WordPress | Your WordPress site stays as it is. | Buy Button adds Shopify products to an external site; included in all plans. | Shopify Help: Buy Button |
| Monthly platform fee | Whatever you pay your host and plugin vendors today. | Basic $39/mo monthly or $29/mo yearly; Grow $105 or $89; Advanced $399 or $359 (USD). | Shopify: Pricing |
WordPress permalink shapes and where each one points
- /2024/05/28/post-name/ or /2024/05/post-name/ to /blogs/news/post-name. Day and name, or Month and name, permalinks. The slug stays; the dates drop.
- /?p=123 to /blogs/news/{handle}. The WordPress default. Shopify warns query-string redirects might not work as expected, so we test these and add a DNS or CDN rule if needed.
- /category/{slug}/ and /tag/{slug}/ to The matching Shopify blog or tag view. Category and tag bases are WordPress defaults, editable but never removable.
- /author/{name}/ to /blogs/news or the writer’s best post. Shopify has no author archive pages.
- /about/, /contact/ and other pages to /pages/{handle}. Pages move as Shopify pages with their copy and images.
- /wp-content/uploads/... images to Shopify-hosted files. We redirect image URLs that have backlinks or image search traffic.
Selling through WooCommerce as well? Products and orders follow the WooCommerce to Shopify plan. Prefer to keep the blog on WordPress? Our WordPress and Shopify integration service connects the two instead.
WordPress Blog to Shopify in 10 Steps
Search Console data comes first, because it decides which posts deserve the move. Images are re-hosted before a single article is published, and the redirect map is tested before DNS changes.
- 🧭01
Decide: blog only, or WooCommerce too?
A WooCommerce store adds product, customer and order files, covered by our WooCommerce guide. A content-only site moves posts, pages and media.
- 📊02
Pull 12 months of Search Console data
We rank every post by clicks, so you can choose which posts move and which redirect to a stronger post.
- 📦03
Export the WXR file from Tools > Export
All content, or Posts filtered by category, author, date range or status. One .xml file comes back.
- 🖼️04
Download every image in /wp-content/uploads
Each referenced image is fetched, uploaded to Shopify and its new address written back into the post HTML.
- 🧹05
Convert shortcodes and blocks to clean HTML
Shortcodes that only work with a plugin are rewritten. Page builder layouts are listed for a theme rebuild.
- 🏷️06
Map categories, tags and authors
Categories become tags or separate blogs. Authors map to staff accounts or a byline line, agreed with you in writing.
- 📝07
Post articles through the Blog API
Each article keeps its publish date, excerpt, slug and the SEO title and description from Yoast or Rank Math.
- 💻08
Rebuild pages and the blog design
Static pages move as Shopify pages; page builder layouts become theme sections. You review a working demo before sign-off.
- 🔗09
Write the 301 map for every permalink shape
Posts, date archives, category, tag and author archives, pages and ?p= links each get a target, one row per old URL.
- 🚀10
Freeze, re-sync, switch DNS
Publishing pauses briefly, new posts are imported, DNS points to Shopify, then redirects and email are tested.
Picking a Partner for a WordPress Blog Move
Blog moves look cheap on paper. Check these four before you compare prices:
Questions for any WordPress migration quote
- How do you get the WXR file into Shopify when there is no import screen?
- Will images be re-hosted on Shopify, or still load from my WordPress host?
- How will my categories, tags and authors map?
- Do my Yoast or Rank Math titles and descriptions carry over?
- What is your plan for old ?p= links and date-based permalinks?
- Can I see a working demo with my own posts before I sign?
Related pages
- WooCommerce to Shopify: products, customers and orders
- Keep WordPress for the blog and connect it to a Shopify store
- WordPress development, if you stay on WordPress
- Shopify migration agency: scope and fixed quotes
- Wix to Shopify: rebuilding a blog that Wix cannot export
- Squarespace to Shopify: one blog per .xml export
- Replatforming without losing SEO: the redirect checklist
Enterprise Store E-Commerce Speed & Latency ROI Calculator
Model how much annual revenue your store loses to mobile page latency, and calculate the exact return on migrating to sub-second architecture:
Based on sub-second 0.8s mobile LCP optimization standards.
WORDPRESS BLOG MIGRATION
WordPress to Shopify Blog Migration FAQ
What editors and owners ask before moving a WordPress blog or site to Shopify:
Topics
Can’t find your answer?
Talk to the founderPlanning the WordPress Move
How do I migrate my blog from WordPress to Shopify?
Export the blog in WordPress under Tools > Export, which downloads a WXR (.xml) file of posts, pages, comments, categories, tags and authors. Shopify has no button that reads that file, so posts go in through a migration app or Shopify’s Blog API. Turn categories into tags, re-upload images from /wp-content/uploads, set each article’s SEO title, then 301 every old permalink to its new Shopify URL.
Can you transfer a whole WordPress website to Shopify?
The content can move; the WordPress machinery cannot. Posts and pages travel in the WXR export, and Shopify’s notes say single pages such as shipping or refund policies can usually be pasted in by hand. Your theme, plugins, forms and page builder layouts do not run on Shopify, so they are rebuilt as Shopify theme sections and apps. Every URL then gets a 301.
My WordPress site runs WooCommerce. Is this the right guide?
Only for the blog half. If you sell through WooCommerce, the products, variations, customers and orders are a store migration with their own export files and limits, covered on our WooCommerce to Shopify page. This page is for WordPress sites that are mostly content: a blog, a brochure site, or a blog sitting next to a store that already runs on Shopify.
Can I keep WordPress for the blog and use Shopify for the store?
Yes, and for a large blog it is often the better call. One route is Shopify’s Buy Button, which adds products to an external website or blog post and is included in all Shopify subscription plans. The other keeps WordPress for content and Shopify for the store, linked by menus and shared design. The cost is two systems to update. See our WordPress and Shopify integration service for that setup.
Can you run a proper blog on Shopify?
Yes. Shopify has a built-in blog: you write posts, add excerpts for the blog landing page, organize posts with tags and edit each post’s search engine listing. You can also create more than one blog, for example a journal and a recipes section. It is simpler than WordPress, with no category tree and no plugin library, which suits stores whose blog supports the products.
What do I give up by moving my blog from WordPress to Shopify?
Mostly flexibility. Shopify posts use tags instead of a category tree. A post author must be the store owner or a staff account with admin access, which matters for guest writers. Article URLs always sit under /blogs/{blog-name}/, so no WordPress permalink survives unchanged. And plugins such as SEO, related-post or table-of-contents tools need a Shopify app or theme code instead.
Exporting the WordPress Blog
How do I export my WordPress blog?
In the WordPress dashboard, open Tools > Export. Choose All content, or choose Posts to filter by category, author, date range or status such as Published. Click Download Export File and WordPress saves a WXR file, short for WordPress eXtended RSS, to your computer. That one file is the starting point for the Shopify import.
What is inside a WordPress WXR export file?
WordPress lists nine kinds of content: posts, pages, custom post types, comments, custom fields, categories, tags, custom taxonomies and users. Image files are not in that list. The file points to your media by URL, so we download each image from /wp-content/uploads and upload it to Shopify before any article is posted. Otherwise posts keep loading images from the old WordPress host.
Does Shopify import WordPress XML files directly?
Not from the Shopify admin. Shopify’s migration notes list migration apps and the Blog API as the ways to bring blog posts across. We parse the WXR file with our own script, clean each post’s HTML and send it to the Blog API, which lets us keep the original publish date, excerpt and slug for every article.
Can I move only some of my WordPress posts?
Yes. The WordPress Posts export can be filtered by category, author, date range and status. Before exporting we pull 12 months of Search Console data so you can see which posts earn clicks. Thin or out-of-date posts can stay behind, and their URLs redirect to the closest post that does move, so no old link ends on a 404.
Categories, Authors & Images
What happens to WordPress categories and tags on Shopify?
They merge into Shopify tags. Shopify’s help says you can use tags to organize posts into categories or by subject, so each WordPress category becomes a tag and nested categories flatten. If your blog has a few large, distinct sections, those can become separate Shopify blogs instead, each with its own URL. We agree the mapping with you before import.
What happens to post authors when the blog moves?
Shopify only lets you pick the store owner or a staff member with admin access as a post’s author. For a blog with guest writers, that means either giving some writers staff accounts or keeping one author and adding a byline line inside each post. Author archive pages in WordPress, such as /author/jane/, are redirected to the blog or to that writer’s best post.
Will my Yoast or Rank Math SEO titles carry over?
Yes, with mapping. SEO plugins store titles and meta descriptions as custom fields on each post, and custom fields are part of the WXR export. We read those fields and write them into each Shopify article’s search engine listing. Where a post had no custom title, we keep the post title rather than inventing one.
Will shortcodes, Gutenberg blocks and page builder layouts survive?
Not as they are. Shortcodes such as [gallery] only render while their plugin runs, so in the export they are plain text. We convert them to clean HTML before import. Gutenberg blocks mostly come across as HTML. Pages built in Elementor or Divi depend on those plugins to render, so they are rebuilt as Shopify theme sections.
What happens to blog comments?
Comments are in the WXR file, so nothing is lost at export. Whether they appear on Shopify is your choice. Many owners leave old comments behind and start fresh; others keep the useful ones as a short quoted section at the end of a post. We agree which option you want before import, since it changes how each post is built.
Permalinks & 301 Redirects
How do WordPress permalinks map to Shopify URLs?
WordPress offers Plain (/?p=123, the default), Day and name (/2024/05/28/post-name/), Month and name, Numeric, Post name and Custom structures, plus /category/ and /tag/ archives. Shopify articles live at /blogs/{blog-name}/{handle}. The post slug can usually stay the same; the path around it changes, so every post, archive and page gets its own 301.
Can Shopify redirect old ?p=123 WordPress links?
Not reliably with its own tool. Shopify warns that URLs containing query strings might not work as expected with its redirects, and its redirects only fire from broken URLs, while /?p=123 sits on your homepage, a live page. We test a sample after launch. If they fail, the fix is a rule at your DNS or CDN provider that sends each ?p= link to its new article.
Will my blog lose Google rankings after moving to Shopify?
Expect some movement after any platform change; nobody can promise none. What protects rankings is a one-to-one 301 map where each old permalink points straight to its new article in one hop, with titles, meta descriptions, headings and images moved intact. We map from your sitemap and Search Console, then retest the redirects after launch.
How many redirects can Shopify hold for a big blog?
Shopify allows 100,000 URL redirects on standard plans and 20,000,000 on Shopify Plus. A blog with a few thousand posts, plus its category, tag, author and date archives, fits comfortably. We keep the list one row per old URL, so you can audit it in a spreadsheet before launch.
Users, Domain & Launch
Do WordPress users become Shopify customers?
Not automatically. WordPress users in the WXR file are mainly authors and site accounts. If your site has members or subscribers who should become Shopify customers, we export them separately and import them by customer CSV. Shopify says customer passwords cannot be migrated that way, so each person gets an invite to set a new password.
Do I have to move my domain off my WordPress host?
No. Most domains stay where they are registered, and we change the DNS records so the domain points to Shopify. Before switching we list your email (MX) records, because many WordPress hosts also run the mailbox, and we confirm mail still arrives after the change. Cancel the old hosting only after launch checks pass.
How do you keep the blog live while it moves?
WordPress stays live until launch. We import a first full export into Shopify, review it with you, then freeze publishing for a short window and import anything posted since. DNS switches, we test redirects and pages, and the old host stays paid for until those checks pass, so going back is a DNS change.
Cost & Timeline
How much does a WordPress to Shopify migration cost?
It depends on post count, how many pages use a page builder, how categories and authors map, and whether you have old ?p= links to handle outside Shopify. A WooCommerce store adds product and order work. FactoryJet quotes a fixed price in writing after a short scoping call, with defects fixed inside the build price for a cover period agreed up front.
How long does a WordPress to Shopify migration take?
FactoryJet migrations run 5 to 8 weeks from signed scope to launch, and a custom-theme store without migration takes 3 to 5 weeks. A blog-only move into a store you already run on Shopify is scoped on its own and quoted in writing. Across 500+ businesses since 2014, 97% of our projects have shipped on time.
Bhavesh Barot
Founder & Chief Technical Architect at FactoryJet · Enterprise Systems & Frontend Specialist
Architect of high-performance Next.js web applications, headless commerce systems, and local search infrastructure for growing brands. Every project is planned, reviewed, and deployed directly under senior technical supervision with zero junior agency handoffs.
Send Us Your WordPress Site
We read your permalink setup, count posts, pages and images, list the plugins that shape your content, and send a written fixed price with the redirect plan attached.