Initial assessment without passwords Quote before intervention One accountable specialist from start to finish

Email Shipping Tax Analytics

WooCommerce Emails Contain Broken Links After a Domain Change

Repair old or broken WooCommerce email links after a domain change by auditing WordPress URLs, templates, serialized data, DNS and redirects.

After a migration, new WooCommerce emails may still link to the old shop, HTTP pages or a staging host. The source can be WordPress URL settings, copied templates, stored gateway configuration, multilingual content or hard-coded custom code.

Start with one newly generated email. Previously delivered messages cannot be edited inside a customer’s mailbox, so they need a safe redirect or communication strategy.

Inventory every broken destination

Record links for My account, order view, password reset, product, support, privacy and logo/image assets. Distinguish newly generated messages from emails sent before migration.

For each link note:
visible label
actual host and scheme
source email type
new or historical message
authentication/order key present

Redact password-reset keys, order keys and customer identifiers before sharing evidence.

Verify WordPress canonical URLs

Check WordPress Address and Site Address use the final HTTPS domain. Confirm the public site redirects consistently to one www or non-www host.

Inspect constants in wp-config.php that may override database settings. In multisite or subdirectory installations, confirm the correct network/site values.

Do not change URLs during active checkout without a backup and rollback plan; callbacks and cookies can be affected.

Search templates and site-owned code

WooCommerce templates normally generate URLs dynamically, but copied email templates or snippets may contain absolute old links.

Search the child theme, custom plugins and email customiser settings for the old hostname. Compare overridden templates with current WooCommerce versions.

$account_url = wc_get_page_permalink( 'myaccount' );

Generate links with WordPress/WooCommerce functions where possible rather than embedding the domain. Escape URLs appropriately when outputting them.

Migrate stored URLs safely

Page-builder, email-customiser and plugin settings can store absolute links in serialised data. Use a WordPress-aware search/replace tool with a dry run and database backup.

Raw SQL replacement can corrupt serialized arrays and objects. Exclude immutable identifiers and review each relevant table.

Search multilingual versions separately because translations may retain their own link and image settings.

Check transactional and gateway settings

Payment return URLs, webhook endpoints and account links can live in external provider dashboards. A broken email link may reveal a wider incomplete migration.

Audit SMTP sender domain, gateway callbacks, wallet domain registration and analytics hostname configuration. Do not rely on redirects for signed webhook POST requests.

New-domain DNS and SSL must be valid before sending customers there.

Preserve safe legacy redirects

Keep control of the old domain and serve HTTPS if historical emails remain in use. Redirect public product and account entry pages to appropriate new locations.

Do not redirect password-reset or order-key URLs to a generic page while discarding their secure parameters. Test whether WordPress can validate or intentionally reject old tokens.

Avoid open redirect rules that accept an arbitrary destination from the query string.

Clear email and asset caches

Email customisers may cache rendered templates, while image CDNs can retain old hosts. Clear the relevant generated templates/assets after correcting settings.

Create a brand-new controlled order; resending an old stored email may reuse content generated before the migration.

Check that images use HTTPS and remain reachable without administrator authentication.

Inspect the plain-text email version too; its URLs may come from a separate override and remain broken when the HTML template is correct.

Verify every transactional email

Test new order, Processing, Completed, refund, account creation and password reset. Follow links as the intended recipient in a clean browser and verify they reach the correct language, order and account state.

Recurring care should run an email-link audit after domain, SSL, language and account-page changes. A migration is complete only when the messages customers keep for months still lead somewhere safe and useful.

BEFORE YOU SEND THE REQUEST

Frequently asked questions.

Do you ask for passwords in the form?+

No. The public form never requests access. Secure credentials are requested only after the scope and quote are approved.

Who reviews the incident?+

The request goes to Jordi Ensenyat, founder of Code Barcelona and a WordPress specialist with more than 15 years of experience.

Is anything changed before the quote?+

No. Visible symptoms and scope are reviewed first. Intervention begins after approval and with a rollback path prepared.

Do you work internationally?+

Yes. WP Repair handles WordPress and WooCommerce incidents in English and Spanish through a remote service.

Assess my incident