Skip to content
DNSPeekDocs

Start here

Preview a WordPress site on a new host

Updated October 2026

WordPress stores its own address in the database and builds most links from it. That usually makes testing a migrated WordPress site awkward. With DNSPeek it isn’t: the new server receives requests for your real domain, so WordPress behaves as if the DNS switch had already happened.

On this page

Keep the real site URL

Leave WordPress Address and Site Address (Settings → General) set to your production domain, for example https://example.com. Don’t change them to the server IP or a temporary hostname for testing: DNSPeek rewrites links to your domain into preview links on the fly.

Check both values with WP-CLI:

Terminal
# Run on the new server, in the WordPress directory
wp option get home
wp option get siteurl

Sign in to wp-admin

Open /wp-admin/ on your preview link and sign in as usual. Login cookies are rewritten to the preview address, so you stay signed in while you check plugins, forms and the checkout. Anything you change there changes the new server’s database.

HTTPS and forced-SSL plugins

If the new server does not have a valid certificate for your domain yet, set the link’s SSL mode to Skip verification. In Auto mode DNSPeek may fall back to HTTP, and a plugin or rule that forces HTTPS will then redirect in a loop.

More in SSL modes.

Fix hard-coded URLs

Sites that were built or restored on a temporary address often keep that address in posts, widgets and theme settings. On the preview those links point away from your domain. A QA report lists them under “Hard-coded URLs”.

Replace them in the database with WP-CLI, then clear any page or object cache:

Terminal
# Preview the changes first
wp search-replace 'https://temp.examplehost.net' 'https://example.com' --all-tables --dry-run

# Then run it for real
wp search-replace 'https://temp.examplehost.net' 'https://example.com' --all-tables

Multisite and subdomains

A WordPress multisite in subdomain mode serves every site of the network on its own subdomain: example.com, shop.example.com, blog.example.com. On paid plans, turn on Include subdomains (WordPress multisite) when you create the link (under Advanced options) or later in the link settings. One link then previews the whole network on the new server:

SitePreview address
example.comhttps://<alias>.dnspeek-preview.link/
shop.example.comhttps://shop---<alias>.dnspeek-preview.link/
eu.shop.example.comhttps://eu--shop---<alias>.dnspeek-preview.link/

Three hyphens separate the subdomain from the alias, and two hyphens stand for each dot of a deeper subdomain. You don’t have to type these addresses: the Open subdomain… button on the link card builds them for you, and links between the sites of the network are rewritten automatically, so you can click from the main site to a subsite and stay in the preview. The new server receives the real hostname (Host: shop.example.com), so WordPress picks the right site, just as it will after the DNS switch.

A few things to know:

  • Sign in on each site. Each subdomain keeps its own cookies in the preview, so a network admin login on the main site doesn’t carry over to the subsites. Sign in again on each subsite you want to check. A password-protected link asks for the password once per subdomain.
  • Mapped domains. Sites of the network that use a domain of their own, not a subdomain, need a link of their own.
  • Length. The first part of a preview address can be at most 63 characters, so with a long custom alias only short subdomains fit. The default 8-character aliases leave room for 52 characters.
  • Free plan. Without Include subdomains, create a link for each site of the network.

Before you switch DNS

  • Click through the pages that matter: home, a post, a category, search, contact form.
  • Upload an image in the media library to confirm file permissions.
  • Run a QA report to catch missing uploads, 404s and redirect loops.
  • Then follow the migration playbook for the switch itself.