WordPress powers a large portion of the web, and WooCommerce is the most common way to add a store to a WordPress site. The problem is structural: WordPress assumes it owns the root of the domain. If your store lives at shop.yourcompany.com, all those product page backlinks are flowing to a subdomain, not your main domain.
If you want yourcompany.com/shop instead of shop.yourcompany.com, WordPress does not support that out of the box. The fix is to route WordPress under a subfolder with Furl and let the edge rewriter normalize URLs.
This guide covers how to do that without breaking carts or checkout.
Why WordPress subfolder routing matters for SEO
Product pages are link magnets. Reviews, roundups, and affiliate posts all link to product URLs. When those URLs live on a subdomain, the authority stays isolated there.
The fix is to move the store under yourcompany.com/shop. With subfolder routing, all product page backlinks now flow to your main domain, and internal links between marketing pages and products carry full weight.
Before you start: WordPress requirements
WordPress subfolder routing requires a public origin URL that Furl can proxy. This is straightforward:
- WordPress.com site:
yourstore.wordpress.com - Self-hosted WordPress:
https://store.yourcompany.ioor any public URL you control
You do not need to move your WordPress origin. Furl routes the traffic and rewrites links at the edge.
The three things that break WordPress commerce
1. Site URL and Home URL confusion
WordPress stores two base URLs in its settings: WordPress Address (URL) and Site Address (URL). If you change these to https://yourcompany.com/shop, WordPress will try to serve /wp-admin and assets from the subfolder, which can break admin access and plugin routing.
Recommended approach:
- Keep WordPress's internal URLs pointed at the origin (e.g.,
https://yourstore.wordpress.com) - Let Furl rewrite public-facing URLs to
https://yourcompany.com/shop - If you use an SEO plugin, set canonical URLs to the production domain
2. Cart and session cookies
Commerce plugins use cookies to track cart and session state. When you move from shop.yourcompany.com to yourcompany.com/shop, those cookies reset. Existing carts will be lost once. New carts will work normally.
Mitigation: Run the migration during a low-traffic window, and post a short banner for returning customers explaining the change.
3. Absolute URLs in themes and plugins
Many WordPress themes hardcode absolute URLs (logo images, background images, CTA links). Furl's link rewriting catches most of these, but if a plugin injects URLs via inline JavaScript, you may need to add a custom rewrite rule.
If you see assets loading from the origin domain after migration, check:
- Theme settings for hardcoded URLs
- Plugin configuration panels for base URLs
- Cached HTML in plugins that render server-side
Step-by-step setup
WordPress subfolder setup with Furl
Set up DNS records for Furl
In your DNS provider:
CNAME/ALIAS @ proxy.usefurl.com (points root domain to Furl)
CNAME www proxy.usefurl.com (points www to Furl)
If Cloudflare: disable the proxy (grey cloud) on the CNAME.
Add your domain to Furl and verify
In the Furl dashboard, create a new domain workspace for yourcompany.com. Once DNS propagates (usually 2-10 minutes), Furl verifies and provisions SSL automatically.
Create the /shop route
New route in Furl:
- Path:
/shop - Destination:
yourstore.wordpress.com(or your WordPress origin) - Platform: WordPress
- Link rewriting: enabled
The WordPress platform setting tells Furl's rewriter to:
- Rewrite internal links to
yourcompany.com/shop/... - Normalize canonical and OG tags
- Preserve WordPress asset paths
Verify canonical tags and assets
Open yourcompany.com/shop and view source. Canonical tags should point to https://yourcompany.com/shop/.... CSS and images should load from WordPress or your CDN without 404s.
Test the full checkout flow
In an incognito window:
- Navigate to
yourcompany.com/shop - Add a product to cart
- Proceed to checkout
- Verify the URL stays on
yourcompany.com/shopthroughout
Run at least one end-to-end test before going live.
Set up 301 redirects from old subdomain
If you had a store at shop.yourcompany.com:
shop.yourcompany.com/* -> yourcompany.com/shop/* (301)
Set these up in Furl's Redirects section.
WordPress sitemaps
WordPress generates a sitemap at /wp-sitemap.xml by default. With routing, it becomes yourcompany.com/shop/wp-sitemap.xml.
In Google Search Console:
- Add
https://yourcompany.com/shop/wp-sitemap.xmlas a sitemap - Also add your main site sitemap if you have one
If you use an SEO plugin that generates its own sitemap, submit that URL instead.
Performance considerations
WordPress performance depends primarily on your hosting. Furl adds minimal overhead at the edge (1-3ms) and can improve global TTFB by keeping the routing layer close to users.
If your store uses heavy plugins, consider enabling edge caching for static pages and bypassing cache on checkout and account pages.
WordPress subdomain vs subfolder: the tradeoffs
Move your WordPress store to a subfolder
Furl handles link rewriting and header normalization for WordPress. Growth plan recommended for commerce traffic.
Tools mentioned
Related posts