We recently moved our blog to a new domain name. If you find yourself in this situation, you will want to read on to make this process as smooth as possible. Why you ask? Well for one, if your site is already listed in search engines, then all of the search results are going to end up linking to that 404 page you worked so hard on creating (or not) and hurting your SEO. This also helps broken links on other sites. Say your buddy writes a blog post and puts a link to a post on your site. Visitors on his site now want to come read your post but guess what? 404! Gnarly dude! That isn’t going to cut it so that is why we are going to redirect those old links to the new ones. Are you ready to get started?
A little background on redirects
301 redirects tell the search engines that the page has permanently moved to a new location. There are quite a few ways to do this for many different types of situations. We are going to focus on a simple domain name change here.
If you want to get your geek on and read more about 301 redirects and other types of redirects, check out these resources:
Here is a quick example of what we want to accomplish:
will now redirect to its new home at
Prior to starting this project, I put our site into maintenance mode using a plugin. I have done this in the past without doing this and from a user standpoint I feel this is the way to go.
If you want to make this process as painless as possible, log in to your WordPress admin panel and go to Settings>General and change the domain to the new one. This will essentially log you out at this point but what it does is change all of the site links internally to the new domain. This step will also keep you from having to go into the database and manually changing everything and potentially causing more problems.
The next step is to permanently forward your old domain to the new one using your domain control panel provided by your domain registrar. Make sure you forward the domain using the 301 moved permanently option. Due to the many different domain control panels, check with your registrar (i.e. GoDaddy, Enom etc.) on how to do this if you need assistance. Keep in mind that domain changes can take up to 48 hours to propagate throughout all the DNS servers. In our case it took a couple of hours before I could see the new domain name and the site and another 8 hours or so before everything was working smoothly.
Following those steps is going to take care of most of the work for you and minimize any issues.
Another thing we did while we were at it was change our permalink structure. We were dating our posts with the /%year%/%postname%/ permalink structure. Since this is a fairly new blog, we went ahead and changed this now to just /%postname%/ .
There is a great article on changing permalink structure by Yoast which explains this and even has a nifty tool to create the redirects for your permalinks so you can just copy and paste into your .htaccess file.
I hope this helps you out if you come across a need to do this. Leave a comment and tell us about your experiences changing domain names. Do you know of a different way to do this?