WordPress URLs hide different jobs

Pages, posts, categories, tags, WooCommerce products, media attachments and builder pages should not all be mapped the same way.

Role comes before destination

Decide whether each URL should become a Shopify collection, product, page, guide, redirect or retired URL before building redirects.

Internal links need direct destinations

Old WordPress internal links should be updated to final Shopify URLs where possible, not left to pass through redirect chains.

The redirect map is the migration deliverable

A URL map with content type, value score, Shopify role, destination, redirect action and internal-link action is the practical output of the mapping process.

URL mapping is where the migration becomes real

A WordPress to Shopify migration is not just a change of CMS or design. It changes URL patterns, content roles, product architecture and how internal links connect pages together.

Without a URL map, redirects get built from memory, old pages 404 without notice, and the search equity built over years on WordPress URLs does not transfer to the new Shopify store.

The URL map decides the fate of each old URL before a redirect is written or a new page is published.

The eight URL types that need separate treatment

WordPress sites produce eight distinct URL types, each requiring a different mapping decision:

WooCommerce product pages (/product/name/) should redirect to the matching Shopify product URL (/products/name). Where products are retired or consolidated, redirect to the nearest collection rather than the homepage.

WooCommerce categories (/product-category/name/) should redirect to the closest Shopify collection. If the Shopify taxonomy restructures multiple old categories into one collection, each old category URL still needs its own redirect to the new collection.

WordPress pages (/about/, /contact/, /privacy/) generally have direct equivalents in Shopify. Map these individually. Some pages — like plugin-generated terms pages or checkout pages — have no Shopify equivalent and should be retired cleanly as 404s.

WordPress blog posts (/blog-name/post-slug/ or /?p=123) need classification by value. High-traffic posts should redirect to equivalent Shopify blog posts. Posts with no traffic and no inbound links can be retired. Posts that function as buying guides or category comparisons deserve evaluation — they may become standalone Shopify pages rather than blog posts.

Tag archives (/tag/name/) rarely earn direct search traffic but are often crawled and indexed. In most migrations, tag archive URLs should be allowed to 404 rather than redirected, since Shopify has no direct equivalent and creating one risks thin-content issues.

Media attachment URLs (/attachment/image-name/) are individual WordPress pages created for each uploaded image. They are rarely visited directly, but some have inbound links from forums or directories. Check inbound link data before deciding — most should 404, but a small number may warrant redirects to the post that originally contained the image.

Builder and plugin pages created by Elementor, Beaver Builder, WPBakery or similar tools may include page variants, preview URLs or plugin-specific paths. These should be 404ed cleanly. Do not redirect them to Shopify pages, as they carry no search equity.

Paginated archives (/category/name/page/2/) can be retired. Shopify pagination works differently and there is no value in redirecting old archive pagination to new Shopify paths.

How to build the redirect map

The redirect map should be a spreadsheet with one row per old URL and the following columns:

ColumnPurpose
Old URLThe exact path from the WordPress crawl export
Page typeProduct, category, post, page, tag, attachment, etc.
Traffic (monthly sessions)From GA4 or Search Console for the last 3 months
Inbound linksFrom Screaming Frog or Semrush link data
Revenue page?Whether this URL appears in GA4 as a landing page with orders
Redirect action301 redirect, retire (404), or rebuild in Shopify
Shopify destinationThe exact new Shopify URL to redirect to
Internal link actionUpdate, leave to redirect chain, or N/A
OwnerWho is responsible for confirming this row before launch

Prioritise rows with traffic above 100 monthly sessions or any inbound links before working through lower-value URLs.

What not to do

Do not redirect everything to the homepage. A homepage redirect tells Google the old page’s content no longer exists. This destroys the URL’s accumulated search equity. Reserve homepage redirects only for truly top-level navigation pages that have no closer equivalent.

Do not map by path similarity alone. A /product-category/leather-wallets/ path redirecting to /collections/leather-wallets looks correct but fails if the Shopify collection has different products, thin copy, or no internal links supporting it.

Do not leave internal links pointing at old WordPress paths. Even with a redirect in place, internal links on the new Shopify site should point to final Shopify URLs. Redirect chains add latency and create a dependency on every redirect remaining in place indefinitely.

Do not forget builder-generated pages. Elementor, Beaver Builder and similar tools often create dozens of preview, revision or plugin-specific URLs that appear in a crawl export. These should be retired — not redirected — as they have no equivalent in Shopify and no search equity.

Validate the map before launch

Run the completed redirect map through the redirect checker tool to identify missing destinations, duplicate destinations, homepage redirects and structural mismatches before the old site is taken offline.

After launch, use Search Console’s URL Inspection tool to spot-check the highest-traffic redirects and confirm they are resolving to the intended Shopify destination with the correct HTTP 301 response.

For the full migration sequence — including tracking continuity, launch QA, and post-launch monitoring — see the WooCommerce to Shopify migration guide.

Quick answer

WordPress SEO evidence should be captured before Shopify migration so plugin settings, metadata, content structure and old URLs are not lost.

What you will do

  • Capture WordPress-side SEO settings before migration.
  • Identify which plugin data matters and which does not.
  • Prepare a clean handoff into Shopify.

What to check first

  • WordPress export tools and database/plugin exports.
  • Rank Math or existing SEO plugin export where relevant.
  • Elementor only where builder content affects migration.
  • Crawler export and Search Console evidence.

Work through it in this order

  1. Export WordPress pages, posts, products, categories, tags and media URLs.
  2. Export SEO titles, descriptions, canonicals, redirects and schema settings from the active SEO plugin where possible.
  3. Identify Elementor or builder pages that contain important content outside normal fields.
  4. Map WordPress content types to Shopify products, collections, pages, blogs or redirects.
  5. Check the migrated Shopify output against the WordPress evidence pack.

Real-world notes

  • Builder content can disappear during migration if the team only exports normal WordPress fields.
  • SEO plugin settings are useful evidence, but they are not a Shopify SEO strategy.
  • Old WordPress tags and categories often need consolidation rather than one-to-one migration.

Final checks

  • WordPress URL inventory exported.
  • SEO plugin fields exported.
  • Builder pages identified.
  • High-value blog posts mapped.
  • Redirect destinations assigned.
  • Shopify output checked after import.

Watch-outs

  • If WordPress uses custom post types, decide whether each becomes a Shopify page, blog article, product metafield or redirect.
  • If old blog content drives traffic, preserve internal links into new Shopify collections.
  • If plugin schema conflicts with Shopify theme schema, use the Shopify output as the new source of truth.
Next action

Build the WordPress evidence pack before the Shopify theme or import process starts.

Field questions

What is the first step in WordPress to Shopify URL mapping?

Export all crawlable URLs from the WordPress site using a crawler like Screaming Frog, then cross-reference with Search Console landing pages and analytics data to identify which URLs carry real traffic, revenue or inbound links.

Do all WordPress URLs need a redirect?

No. Low-value pages, tag archives, attachment URLs and duplicate paths may be better retired — confirmed as 404s — than redirected to a poor destination. Redirecting everything to the homepage is worse than letting some URLs 404 cleanly.

How should WooCommerce category URLs be mapped?

WooCommerce category URLs (typically /product-category/name/) should redirect to the closest Shopify collection. If the Shopify store restructures categories, multiple WooCommerce categories may need to map to a single collection with unique content handling for each.

What happens to WordPress blog posts during migration?

Blog posts that rank or drive traffic should redirect to equivalent Shopify blog posts at the new URL. Posts with no traffic and no inbound links can be retired. Posts that function as buying guides should be evaluated for whether they should become standalone Shopify pages or Shopify blog posts.

Should I update internal links or rely on redirects?

Both. Redirects protect external links and Search Console equity. But internal links on the new Shopify site should point to final URLs, not pass through redirect chains. Redirect chains add latency and create fragility when redirects change.

What is the most common URL mapping mistake?

Mapping by URL path similarity rather than content role and value. A WordPress /product-category/shoes/ path redirecting to /collections/shoes/ looks logical but misses the question of whether the Shopify collection has the right product set, copy, and internal links to inherit the old page's search role.

Commercial disclosure

Partner links mentioned on this page

Some links may earn a commission, but recommendations still start with the store problem, the evidence, and the simplest workable next step.