Fixed prices · Business-day deadlines · Refund if we're late
Migrations · WordPress

WordPress to Shopify, for sites where content matters as much as the store

In short

A WordPress move is a content migration first. Shopify has fixed URL prefixes (/blogs/, /pages/), no categories for posts, no page nesting and no custom post types. Those become tags, flat pages and metaobjects. The permalink structure decides the redirect map. If your site publishes more than it sells, we'll tell you whether keeping WordPress for the blog is the better call. Running WooCommerce too? See the WooCommerce migration page.

Last updated · Facts and prices checked October 22, 2026 · By the Quick & Sons crew

Shopify is a good shop and a plain blog

Shopify's blog engine is deliberately simple. Each blog lives at /blogs/{blog}/{article}, articles have tags but no categories, and pages are flat at /pages/{handle}. If your WordPress site leans on deep category archives, scheduled editorial workflows or dozens of authors, that's a real loss.

For most product brands it's fine. They usually have fewer than a few hundred posts, a handful of categories and one or two writers. For a publisher that also sells, we may recommend keeping WordPress on a subdomain for content and moving only the shop. We'd rather say that on the intro call than sell a migration that costs you traffic.

WordPress content types on Shopify

On WordPressHow it movesNotes
PostsMoves by toolBecome blog articles with author, date, featured image and excerpt.
Post categoriesMapped by handShopify has no categories: they become tags, or separate blogs for big sections.
Post tagsMoves by toolKept as article tags.
Pages and child pagesMoves by toolBecome flat pages; parent/child paths collapse to one handle.
Custom post typesMoves by tool, after modellingBecome metaobjects with their own page template.
ACF and custom fieldsMoves by tool, after mappingBecome metafields or metaobject fields.
Media libraryMoves by toolImages used in content are re-hosted in Shopify Files; unused media is left behind.
Gutenberg blocks and shortcodesCleaned upShortcodes are rendered or removed; layouts are rebuilt in sections.
CommentsArchivedShopify blog comments are basic; most sites archive old comments rather than import them.
Users and authorsMapped by handAuthors become article author names; WordPress users don't become staff accounts.
SEO titles and metaMoves by toolFrom Yoast or Rank Math into Shopify's SEO fields.
Menus and widgetsRebuiltRecreated as Shopify menus and Horizon sections.

Custom post types become metaobjects

Recipes, lookbooks, stockists, team bios, FAQs and case studies usually live in custom post types with Advanced Custom Fields. Shopify's equivalent is a metaobject: a content type you define, with its own fields. Metaobject entries can be published as web pages with their own template. We recreate the field structure, import the entries with Matrixify and build the template in Horizon, so a recipe still has its ingredients list and a stockist still has its address and map link.

WordPress lets each site choose its permalink structure1, so the first step is reading yours. The patterns below are the common ones; the map itself is built from the full URL list and imported into Shopify's URL redirects2.

WordPress URLShopify URLCovers
/{post-slug}//blogs/news/{handle}"Post name" permalinks, the most common setting.
/{yyyy}/{mm}/{dd}/{post-slug}//blogs/news/{handle}"Day and name" permalinks.
/category/{category}//blogs/news/tagged/{tag}Category archives become tag pages.
/tag/{tag}//blogs/news/tagged/{tag}Tag archives.
/{parent}/{child}//pages/{child}Nested pages flatten.
/{cpt-slug}/{entry}//pages/{type}/{entry}Custom post type entries published as metaobject pages.
/author/{name}//blogs/newsAuthor archives have no Shopify equivalent.
/wp-content/uploads/{yyyy}/{mm}/{file}.pdfShopify Files URLOnly for files with backlinks or traffic.

Plugins, and what replaces them

  • Yoast / Rank Math titles and meta descriptions import into Shopify's SEO fields; their schema output is replaced by Horizon's built-in structured data.
  • Gravity Forms / Contact Form 7 become Shopify Forms or a form app, and old form submissions stay in your WordPress export.
  • ACF fields become metafields or metaobject fields.
  • Redirection plugin rules are exported and folded into the new map, collapsed so no URL redirects twice.
  • Membership plugins usually need a gated-content app, which we scope on the call.

WordPress-specific risks

Post slugs that collide with page slugs

WordPress allows a post and a page to share a slug at the root. On Shopify they land under different prefixes, which removes the clash, but both old URLs need a rule.

Internal links inside posts

Hundreds of posts link to /old-page/ style URLs. Redirects catch them, but we also rewrite links inside the imported content so readers don't hop through a redirect.

Feeds and AMP URLs

/feed/ and /amp/ variants still get crawled after launch. They're redirected to the matching Shopify article or blog.

Embedded media

YouTube and other embeds come across, but shortcode-based galleries and sliders need rebuilding.

Picking the right Move

WordPress sites with a clear theme, a small blog and a few product pages fit Off the Rack. Sites with custom post types, many templates or 25+ pages worth keeping fit Tailored, which includes up to 25 pages re-laid out in the new design and up to 4 extra templates. Use the migration cost calculator to see where yours lands.

Get a fixed price and a launch date in 15 minutes.

Tell us what you're running today. You'll have a written scope, a price that won't change and the date we'll be held to within one business day.

the usual fit

Tailored Move

$8,900

Established brands that want the new store to look and sell better than the old one. · 15 business days.

Pay the 50% deposit · $4,450

All prices

Sources

  1. WordPress documentation: Customize permalinks, checked October 22, 2026.
  2. Shopify Help Center: URL redirects, checked October 22, 2026.