How to Migrate a Store From Shopify to WooCommerce Without Losing SEO

Migration Playbook: Moving to WooCommerce

This guide outlines the technical process for migrating an e-commerce store to WooCommerce. It assumes you have a staging environment ready.

Phase 1: Data Extraction and Mapping

Do not migrate directly to production. Use a staging site.

Exporting Data

  1. Products: Export to CSV. Ensure SKU, Title, Description, Price, Sale Price, Stock Quantity, and Categories are mapped.
  2. Customers: Export name, email, billing/shipping addresses, and order history.
  3. Orders: Export order IDs, line items, totals, payment status, and customer association.

Mapping to WooCommerce

Use the WooCommerce Product CSV Importer for standard data. For complex relationships (custom fields, subscriptions), use WP All Import with the WooCommerce Add-on.

  • Command (WP-CLI): If importing large files, avoid the browser timeout. wp wc product import file.csv --user=1

Phase 2: Preserving Metadata and SEO

URL Structure and 301 Redirects

If your permalink structure changes, you must map old URLs to new ones to avoid a 404 disaster.

  1. Map URLs: Create a CSV with two columns: Old_URL and New_URL.
  2. Implement Redirects: Use the Redirection plugin or edit the .htaccess file.
    • Example .htaccess rule: Redirect 301 /old-product-page /product/new-product-page
  3. Canonical Tags: Ensure the rel="canonical" tag points to the new URL.

Metadata Preservation

If you have custom metadata (e.g., "Manufacturer Part Number"), use Advanced Custom Fields (ACF) to register the field keys before importing. Map your CSV columns to these ACF fields via WP All Import.

Phase 3: Payments and Checkout

Payment Gateway Setup

  1. Install the gateway plugin (Stripe, PayPal, etc.).
  2. Test Mode: Always enable "Test Mode" first.
  3. API Keys: Use test API keys. Perform a transaction using test credit card numbers provided by the gateway.
  4. Webhooks: Ensure the webhook URL is copied from WooCommerce and pasted into your payment provider's dashboard. This is critical for order status updates.

Checkout Testing Checklist

  • [ ] Guest checkout enabled/disabled as per requirements.
  • [ ] Shipping zones and tax rates calculated correctly.
  • [ ] Email notifications (Order Confirmation, Processing) are firing.
  • [ ] Coupon codes apply discounts correctly.
  • [ ] Order status updates from "Pending" to "Processing" upon payment.

Phase 4: SEO Verification

Sitemap and GSC

  1. Generate Sitemap: Use Yoast SEO or Rank Math to generate a new sitemap_index.xml.
  2. Google Search Console (GSC):
    • Submit the new sitemap.
    • Use the URL Inspection Tool to verify that the 301 redirects are being indexed correctly.
    • Monitor the "Coverage" report for 404 errors post-launch.
  3. Robots.txt: Ensure your staging site is blocked from indexing (Disallow: /) and that your production site allows it.

Common Migration Mistakes

  1. Ignoring Image Alt Text: When migrating products, images often lose their Alt text. Ensure your CSV import includes an Image Alt Text column.
  2. Forgetting Order IDs: If you don't preserve original Order IDs, customer support becomes a nightmare. Use a plugin like "Sequential Order Numbers Pro" to match your old store’s numbering.
  3. Missing Webhooks: If you forget to configure webhooks, orders will be paid for but remain "Pending Payment" in WooCommerce.
  4. Not Testing Live Transactions: Testing with a $1.00 product is mandatory. Never assume the gateway works just because the settings are saved.
  5. Large Image Files: Migrating thousands of high-res images without optimization will kill your site speed. Run images through an optimizer (e.g., ShortPixel) before or during import.

Pre-Launch Checklist

  • [ ] Database Backup: Take a full SQL dump before the final import.
  • [ ] Maintenance Mode: Enable during the final DNS switch.
  • [ ] DNS TTL: Lower your TTL to 300 seconds 24 hours before the move.
  • [ ] SSL Certificate: Ensure it is installed and active on the new server.
  • [ ] Email Testing: Verify that transactional emails are not hitting the spam folder (use an SMTP plugin like Post SMTP).
  • [ ] Performance Audit: Run a Lighthouse audit on the staging site.

Final Cutover Steps

  1. Put the old site in maintenance mode.
  2. Perform a final "delta" import (only orders/customers created since the last sync).
  3. Update DNS settings.
  4. Clear server-side cache (Redis/Varnish).
  5. Run a test purchase on the live site.
  6. Disable maintenance mode.

Need this done for you? Hire me on Freelancehunt: https://freelancehunt.com/freelancer/sspoisk

Originally posted at https://guardlabs.online/care/

Комментарии

Популярные сообщения из этого блога

Beyond the Sandbox: Why Paper Trading Lies and What to Actually Validate

Why Your European Amazon Store is Bleeding Cash (And It's Not the Demand)

Regime Detection: Why Your Strategy Fails and How to Spot the Shift