Moving My Static Site to a WordPress site

“The cobbler’s shoes” is a phrase that search marketers really should not have any excuse for. I often hear people saying “we don’t actually do it for our own site because we don’t have time”. If our own sites are not trying to do what they are meant to do, then how can we expect cients to act on our advice?

Case in point… and guilty as charged… I finally relaunched my Murder Mystery Games site two weeks back and it involved dreaded URL changes. Arrgh! The redesign itself was done about 18 months ago, but the designer wasn’t SEO savvy and although I gave strict instructions, it’s weird how people can stick to instructions yet still come up with something entirely unworkable on search. I’m not complaining, it looks great. It looked even greater before I had to get a second web developer to change the whole new design and turn it into a WordPress theme. Doing that gave me some new challanges in the redesign.

1: How to set up the development server? I was smart enough to realise that putting up the new site without blocking google during the design phase would potentially duplicate all my content. So I put the site behind a password protected directory. However… I was of course unable to move the DNS to the new site until the new site was completely set up with 301s and all the rest. So I took some bad advice… I set up wordpress on an unused domain, with a view to parkeing the main domain there afterwards and then I was told everything would be hunky dory by the server managers. Don’t try that at home folks! the database screws up, and when you try to fix it, you break wordpress. I ended up moving the DNS for just long enough for me to be able to set up a cpanel system on the new server, then moved it back (down time less than 2 minutes). I could then at least set up a properly configured WordPress installation.

2: Keeping the URL structure… or not. Well I REALLY tried to keep the urls the same. The old site had .htm files and of course WordPress would rather not have these. Because the new site was using wordpress PAGES rather than Worpress POSTS, there was also not a plugin or url syntax that allowed me to add .htm to the page urls. So in the end I used a hack in the main WordPress code. Not ideal because I now have an unstable version of WordPress which I can’t update without remembering to change the code each time. But even more pointless is that when I went live, it didn’t quite work. I was trying to get urls like but found these had a 301 to Hey ho… I guess if the urls can’t stay identical then a 301 is OK, but after all the effort I’m a bit annoyed with myself. If I’d known I would have to 301 anyway, I would have dropped the .htm altogether.

3. Don’t screw up the WWW non WWW decision! To my cost I accidently switched my site from redirecting to redirecting the www to non www. That wasn’t meant to happen and to fix it I had to first realize my mistake (which I realized as my traffic levels started tanking) and then get into PHPmyAdmin as I couldn’t fix it from WordPress. I hate that. Anyway – the long and short of it is that this post is ENTIRELY written so that I can get Google to go and spider to realise that it is a 301 and put my proper homepage: back in its index where it belongs. When you put up a new site, it is often the case that some of the old inner URLs don’t get spidered for months, because no internal pages link to them anymore. Oilman gave me the idea years ago of submitting the OLD url structure to google sitemaps, thus getting Google to find and update all the 301s quicker, but since I try not to use sitemaps at all, this post will have to do for the home page at least.

4. Look out for those dead links: One area where webmastertools was REALLY helpful was seeing the broken inbound links. Google had already found 95 dead links to index.htm before I picked this one up. Next time I migrate a site I’ll be looking at this like watching paint dry. Once noticed, the fix was really easy. I always use John Godley’s “redirection” plugin and it seems to do the trick for me.

So what happened?

Well… there was a whole lot of other things that caused me problems. I’ve been kicking myself daily. But the main target phrases have maintained and improved. Interestingly, I also took the time to properly analyse my stats and found that most ofr my visitors were coming in using the word “free”. Surprise surprise… thiose ones weren’t converting. There were several other changes that I could now start making on the site – and will comtinue to do so – which will make the pain of transferring over to a CMS based solution very worthwhile in the long run. But… I’ll be honest… the traffic levels have dropped by 30% or so right now. That said… conversions have gone up considerably to nearly double what they were before. Part of the traffic level drop is due to the change in messaging… the visitors are now arriving with far more appropriate search phrases. But I am still hoping that the overall numbers will recover in the next week or two… in which case I should have increased my turnover by 300% all told.

Better than a kick in the teeth huh?

Next task… how to get the US traffic back to my UK business. I think I’ll have to work on a non site for that. Luckily I have one… just another two years work…

6 thoughts on “Moving My Static Site to a WordPress site

  1. Dixon,

    A few comments

    1. Why not set up the dev server on a local box? You can change your windows host file and your apache virtual host settings so that resolves to the local site on your computer. When dev is done, you move it and reset the windows host file. You can create a simple script to do this in one click for 1-second changing back and forth; I usually just use example.loc (for local) but that might not work with a lot of rewrites.

    2. Why aren’t you just rewriting the URLs (no 301) just a rewrite so you can keep the old URLs? A simple rule to strip off the .html and wouldn’t you have what you want?

  2. Good points, but I think I have good ripostes…

    The first point was using a local server. Setting up Apache is OK, but I was told many years ago that putting MySQL on a windows box was asking for disaster. That may not be the case now, but in any event I had third party developers working on the WordPress theme and transferring the content, so it made sense to do it on the web server itself as the designers were remote anyway.

    The second point… as I say… I SO tried to keep the old urls with a rewrite hack, but the previous urls ended in .htm and even when I implemented the hack, WordPress insisted on adding a trailing slash… (.htm/). I didn’t pick up on this until it went live and by then there was duplication issues all over the place.

    It’s nearly all sorted now. Traffic yesterday is down about 12% on the previous highs, but now I have been messing with some of the content and Descriptions, this may be because my traffic is getting more targeted, not worse. Certainly my sales have doubled now. Trebling them will need more work, but all in all a success.

    I would recommend making the move from a static site to a CMS based one to others in the same boat, but you really do need to know what you are doing. Nerves of steel and most importantly the ability to react very quickly on the days following the switch. Something is going to go wrong… you just need to be able (or pay someone else to be able) to spot the problems quickly enough.

  3. >>(.htm/).

    How nice of WP to help you out like that. I don’t think I quite understood what you were saying there the first time.

    >>MySQL on a windows box

    I don’t know about a production site, but I’ve mirrored tons of MySQL DBs to Windows, and ones a lot bigger and more cumbersome than the typical WP database. I’ve never had a problem since MySQL 3.??? (so many years). Some things (MySQL but also PHP scripts in general) can be surprisingly slow, but since you’ll typically only have one concurrent request….

    Anyway, I’ve rarely had a problem with building on Windows and rolling out to *nix. I get it running. FTP everything over to a dummy directory (, upload the DB, and then just change the directory names. If I don’t like it, change the names back and test some more.

  4. I would suggest to go by the wordpress way. You can create a new WP based site and add all the data, pages, posts in a default manner. Then simply edit .htaccess file and tell about permanent redirect like this

    Redirect 301

    i hope this is easier without messing up anything. Moreover, i think www or non www is a personal choice but its wise to stick with any one of these option and not both. Google or other search engines might treat both of them as separate sites.

Leave a Reply

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