WordPress

How to Migrate a Website to WordPress

Moving an existing site to WordPress is mostly a planning job. Here is how to move your content, keep your search traffic and launch without breaking things.

Quick answer: To migrate to WordPress, start with a full inventory of your current pages, URLs and traffic, then set up WordPress on a staging server, move the content with an importer or a script, rebuild the design as a theme, and map every old URL to its new home with 301 redirects. Test everything on staging before you switch the domain over. The content move is usually the easy part; protecting your URLs and search rankings is where most of the care goes.

Businesses move to WordPress for different reasons. Some have outgrown a hand-coded HTML site that only one developer can edit. Some are stuck on an old proprietary CMS with a licence fee and no updates. Others started on a hosted builder and now want more control over design, SEO and plugins. Whatever the starting point, the process follows the same pattern. This guide walks through it in the order we work.

Before you start: decide what you are moving

A migration is a good moment to clean house, but it is also a risky one. The more you change at the same time, the harder it is to tell what caused a problem later. Decide early which of these you are doing:

  • A straight move: same pages, same content, same URLs where possible, new platform underneath.
  • A move with a redesign: same content, new look and layout.
  • A move with a restructure: content merged, removed or rewritten, and new URLs.

A straight move is the safest. If you also want a redesign or restructure, it is often wiser to migrate first and change the structure in a second phase, once traffic has settled.

Step 1: Audit your current site

You cannot move what you have not listed. Build a spreadsheet of every URL on the current site. Useful sources:

  • A crawler such as Screaming Frog SEO Spider, which lists every page, image and file it can reach, with titles, meta descriptions and status codes.
  • Google Analytics: the landing pages report over the last year shows which pages actually get visits.
  • Search Console: the Search Analytics report shows which pages appear in search, and Links to Your Site shows which pages other sites link to.
  • Your XML sitemap, if the current site has one.

For each URL, note the page type (page, blog post, product, category, PDF), whether it gets traffic or links, and what should happen to it: keep, merge, or remove. Pages with traffic or backlinks need a clear destination on the new site.

Step 2: Set up WordPress on staging

Never build the new site on the live domain. Set up WordPress on a staging subdomain or a separate server, and block search engines from it. The “Discourage search engines from indexing this site” option under Settings > Reading works, but password protection at server level is safer, because it also keeps the public out.

At this stage, also decide on:

  • Hosting. Check the host runs a current PHP version and supports HTTPS. PHP 7.0 is the one to ask for if your plugins support it.
  • Permalinks. Choose your URL structure now under Settings > Permalinks. Matching the old structure, where possible, reduces the number of redirects you need.
  • Core plugins: an SEO plugin such as Yoast SEO, a redirect manager such as Redirection, a backup plugin, and a security plugin.

Step 3: Move the content

How you move content depends on where it lives now.

From another CMS

WordPress has official importers under Tools > Import for Blogger, Tumblr, LiveJournal, Movable Type and TypePad, plus a generic RSS importer. For Joomla and Drupal, there are well-maintained community plugins such as FG Joomla to WordPress and FG Drupal to WordPress, which pull posts, categories, images and sometimes users straight from the old database. Paid services like CMS2CMS cover many other platforms.

If you are coming from Blogger specifically, our Blogger to WordPress guide covers that route in detail.

From a static HTML site

For a few dozen pages, copying content into the editor by hand is often quickest, and it gives you a chance to tidy the formatting. For hundreds of pages, the HTML Import 2 plugin can pull pages from a folder of files, keeping titles and parent-child structure. A custom script that reads the HTML and creates posts through WP-CLI is another option for large or unusual sites.

From a hosted site builder

Some builders offer an export. Squarespace, for example, can export much of its content in a WordPress-compatible XML file. Others do not, which leaves copying by hand or scraping the pages with a script. Expect to rebuild galleries, forms and any special page layouts manually.

From a custom or proprietary system

If the old system stores content in a database, a developer can usually write a one-off export to CSV or WordPress XML (WXR) format. Plugins such as WP All Import can then map columns to post fields, custom fields and taxonomies. This is common when moving product catalogues, directories or event listings.

Do not forget the media

Importers do not always bring images across. Check that images are copied into the WordPress media library, not still loading from the old server. Once the old server is switched off, hotlinked images will break. Search the imported content for the old domain to catch them.

Step 4: Rebuild the design as a theme

Your new site needs a theme. You can buy a premium theme and adjust it, or have a custom WordPress theme built to match your brand and content. If you are migrating without a redesign, a custom theme built from your existing HTML and CSS is usually the cleanest way to keep the site looking the same.

Pay attention to the page types you found in your audit. A blog post template, a service page template and a contact page are standard. Things like team listings, case study pages or product specifications may need custom post types and custom fields, so editors can add new entries without touching the layout.

Step 5: Map URLs and set up redirects

This is the step that protects your search traffic. Go back to the spreadsheet and add a column for the new URL of every old page. Then:

  • Keep URLs identical where you can. If the old page was /services/web-design/, create the WordPress page at the same address.
  • 301 redirect everything else. Every old URL that changes should point permanently to the most relevant new page, not to the homepage.
  • Handle file extensions. Old sites often use .html, .php or .aspx URLs. These need redirects to the new clean URLs, either in the Redirection plugin or in the server configuration (.htaccess on Apache, a server block on Nginx).
  • Keep removed pages honest. If a page has no equivalent and no value, letting it return a 404 or 410 is fine. Redirecting everything to the homepage confuses visitors and search engines.

The redirect plan is the core of any SEO migration. Test it on staging by checking a sample of old URLs, or run the whole list through a crawler in list mode.

Step 6: Carry over SEO settings

Content alone is not enough. Make sure each page keeps:

  • Its title tag and meta description, entered in your SEO plugin.
  • Its headings and body copy, without accidental changes.
  • Image alt text.
  • Internal links, updated to the new URLs rather than relying on redirects.
  • Any structured data the old site had.

Generate a new XML sitemap from your SEO plugin, and check the robots.txt file will not block anything important once you go live.

Step 7: Test before launch

Go through the staging site as a visitor would, and as an editor would. A short checklist:

  • Every page from the audit exists or redirects correctly.
  • Forms send email to the right people, and the confirmation messages make sense.
  • Analytics and any other tracking codes are installed.
  • The site works on phones and the main browsers.
  • Page speed is at least as good as the old site.
  • Editors can log in and update content without help.

Step 8: Launch and monitor

Pick a quiet time to switch. Point the domain to the new server, remove the staging block, and confirm search engines can crawl the site. Then:

  1. Submit the new XML sitemap in Search Console.
  2. Use Fetch as Google on a few key pages.
  3. Crawl the live site and the old URL list again to catch broken redirects.
  4. Watch the Crawl Errors report and your analytics daily for the first couple of weeks.

Some movement in rankings during the first weeks is normal. A sharp, lasting drop usually points to missing redirects, blocked pages or content that changed more than intended.

FAQ

Will I lose my Google rankings if I migrate to WordPress?

Not if URLs are kept or redirected properly and the content stays the same. Short-term fluctuation is common, and it should settle once Google has recrawled the site.

How long does a migration take?

A small brochure site can move in a week or two. Large sites with thousands of pages, custom data or a redesign take longer, mostly because of planning and testing.

Can I keep my domain and email?

Yes. Moving the website does not affect your domain registration, and email can stay where it is, as long as you only change the DNS records for the website.

Plan the move, then make it

A migration done carefully gives you a site that is easier to manage without losing the traffic you built. If you would like a hand with the planning, build or redirects, see how we help businesses turn visitors into customers.

About the author

Imran M

Leave a Reply

Your email address will not be published. Required fields are marked *

Ready to improve your website?

Let's build a faster, higher performing website.