In a previous post, I provided instructions on how to move your self-hosted WordPress blog from one host to another. Those instructions assume you want your new blog/site to look exactly like your old one. If you want to revise your site when you change hosts, and want a seamless transfer from the old site at the previous host to the revised site at the new host, you’ll have to do a bit of tweaking so that you can actually see your site at the new host before the DNS resolves.
Warning: While this process is not difficult, don’t attempt this if you consider yourself technically challenged. As a test, review the post Backing Up Your WordPress Blog. If you find the steps difficult or confusing, you may not want to attempt the following steps on your own.
Overview
When you change hosts, you must change the domain name servers associated with your domain name to point to the new host’s servers. (See the Overview: Domain Name Servers section of Moving Your WordPress Blog for more information). If you want to update and revise your site on the new host so that visitors to your site will automatically see the revised site on the new host once the DNS transfer is complete, you’ll have to make changes to the new site before the domain name servers are changed.
Sounds easy, but there’s a hitch: YOU won’t be able to see your new site in its entirety until the DNS resolves. You can’t effectively update the site if you can’t see what you’re doing! And, while your host will generally give you an internal or IP-based address by which you can access your site before the DNS resolves, this address is limited. Your internal navigation and links won’t work, and you won’t be able to move from one page to another on your site. This is because links in WordPress are stored in the associated database, and the database uses the real links to pages of your site. (Translation: While you can get to the home page of your site using the internal or IP address the host provides, when you try to navigate to another page on your site by clicking a page link or hyperlink, you’re triggering WordPress to pull the location information from the database. Since the database is holding the permalink information to the live site, you’ll pull information that won’t work until the DNS resolves, and you won’t be able to get to the in-process site.)
As well as changing links in the database, you must change links in the content of your site in order to update and view it during this time.
Solution Overview
In order to see your new site in its entirety before the DNS resolves, you must go into the MyPHP tool of the database associated with your WordPress site and update the values in the site_url and home rows in the wp-options table. You can also use the free plugin Update URLs from Velvet Blues to change the links within the WordPress content.
After you’ve made the changes you want to your site, and before the DNS resolves, you must change the database values back to their original and run the Update URLs plugin once again to ensure your database and WordPress content links are pointing to the correct locations.
What you need to start the process:
- The instructions for Moving Your WordPress Blog
- The address at which you log in to the control panel (c-panel) for your new host
- The address at which your site can be viewed before the DNS propagates
- The name of the MySQL database associated with your site
- The free WordPress plugin Update URLs from Velvet Blues Web Design and Development (no affiliation)
How to change your database to view your WordPress site before the DNS resolves
Note: These instructions and screen shots are specific to blogs hosted at HostGator, which is the host I use (yes, I’m an affiliate). The specific screens or steps may be slightly different if you use a different host.
1. Follow steps 1 through 9 from Moving Your WordPress Blog.
Do not update the DNS servers to point to your new host yet!
2. Log in to your control panel.
3. Click the phpMyAdmin icon.

You’ll see a your database name (or a list of database names) on the left.

4. Select your database.
You’ll see a list appear on the left, under the database name. These are the tables on the database.

5. Click the wp_options table.
You’ll see the right side of the window populate with information (in the body of the window) and tabs (at the top of the window).
6. Click the Browse tab.

You’ll see a series of columns and rows on the right; these are the rows (also known as fields) in the database table.
You’ll also see a pencil icon to the left of each row. Clicking the pencil icon enables you to edit the associated row.
7. Click the pencil icon in the site_url row (usually row 1 or 2).
Your domain name will appear in the large box on the right (ie, http://yourdomain.com).

8. Change the value in the row to include your IP address and HostGator username. (Format: http://IPaddress/~username/ )
If you have installed WordPress in a subfolder or subdomain, add the folder name at the end of the address. (Format: http://IPaddress/~username/foldername/ )
9. Ensure the drop down box at the bottom of the page displays Save.

10. Click Go.
11. Click the Browse tab
12. Navigate to the home row (usually row 39) on the next page.

13. Click the pencil icon in the home row.
14. Change the value in the row to include your IP address and HostGator username. (Format: http://IPaddress/~username/ )
If you have installed WordPress in a subfolder or subdomain, add the folder name at the end of the address. (Format: http://IPaddress/~username/foldername/ )
15. Ensure the drop down box at the bottom of the page displays Save.
16. Click Go.
You’ve now updated your database to deliver the correct temporary information to your WordPress site. Remember to follow this process to return the original values after you’ve changed your name servers.
You have one more series of steps to go before you can fully view your site at the temporary address.
How to change internal WordPress links to view your WordPress site before the DNS resolves
1. Install and activate the Velvet Blues Update URLs plugin.
2. Click Update Urls in the Settings area of the WordPress admin area.
3. Choose Yes for Update Urls AND links in page or post content?
4. Type your real domain in the Old URL box.
5. Type your temporary URL, as given to you by your host, in the New URL box.

6. Click Update URLs.
You’ve now updated your site links. You can go to your home page and use links and navigation to access other pages and areas within your site. As with the changes you made to the database, remember to follow this process after you’ve changed your name servers to insert your actual domain information. Delete the Blue Velvet Update URLs plugin once you’ve completed the changes.
One more reminder: After you have revised your WordPress site, go through both processes above to reverse the changes you made, pointing your database and links to your actual domain. Once you’ve done this, update your name servers to point to the new host’s servers.
When your DNS propagates, enjoy your WordPress site’s updated look on your new host!


Thanks for the clear directions. I was able to correct from pre to post dns transfer as well. This was driving me crazy!