I converted this blog from a blogger.com FTP website to WordPress in September of 2009. I started the Blogger.com version in August of 2003 so there were six years and 1750 or so posts to convert. I had a very complicated custom template that I developed over the years. It is ugly as sin, but the ugly layout and templates help identify me and separate me from the bloggers with clean designs and forgettable websites.
First off, I had to learn how to modify a template. I did this by making a copy of the default template and putting it into a directory call Wandering1. (I expected to go through several versions, but it turns out that I only needed one try.)
There is a file in the template directory called index.php. This is where I started. I went through it line by line and changed the look to my personal layout. It took several days of tweaking, but I got it right.
The big difference between my layout and the standard WordPress layouts is that I define the top part of my page in the footer. I use CSS to locate this at the top of the web page, but it actually paints last. I want the content – the important part of my blog – to be as close to the top as possible, not the heading stuff. I want the search engines to discover content first and then the links to my blog roll and my archives and other web pages later. I edited header.php, footer.php and sidebar.php to match what I had done with index.php.
I then changed the files single.php, page.php, archive.php, and archives.php to match what I had done with index.php. When I was through, most of the pages looked nearly exactly the way the original Blogger.com blog looked.
My next hurdle was exporting the Blogger.com posts to WordPress. Since I had 1750 posts, many a thousand words long, this was not trivial. WordPress cannot handle the xml export that Blogger.com produces and WordPress cannot import an FTP blog directly from Blogger.com.
The first solution was to change my Blogger.com settings so that I had a blog hosted at BlogSpot.com. I was able to import directly from Blogger.com using the built in WordPress function.
On my first try, I discovered that WordPress failed after around 800 transactions. This is because my hosting company, 1and1.com, had a limit on the time a script can run and as a result, the script was cancelled before it finished. I use another hosting company for some of my sites, so I installed WordPress on a site at HostGator.com, and I was able to import all of the transactions into WordPress.
I exported the MySQL WordPress tables and then imported them into the MySQL on 1and1.com, and I had liftoff.
I turned on “canonical names” to make the structure of the blog look as much like Blogger.com as possible. I also added “.shtml” to the end of the canonical name so that it was just the same as Blogger.com. (Unfortunately Blogger.com had refused to republish my old blog entries and some Blogger.com pages still had the older “.html” and even – gasp – “.htm”).
I had been working with a test directory. I renamed the blog directory as blog_backup, and I renamed the test directory to blog. I had to go into the configuration editor to tell WordPress to use the blog directory. It was alive.
Next, I installed the plug-ins.
I knew enough to turn on Akismet, the built in WordPress spam filter. Spam robots search for WordPress installs and leave their nastiness behind. I want to encourage comments, but I turned on moderation and set some custom filters in addition to the ones provided by Akismet.
I downloaded and installed the All-in-one SEO pack plug-in that helped with the titles, descriptions and other tweaks needed to make WordPress play nicely with search engines.
I installed Google XML sitemaps and told Google Webmaster Tools about the shiny new blog posts. You really need Google Webmaster Tools, Google Analytics, and MyBlogLog.com accounts to find out what is going on in your blog.
I quickly became frustrated with having delete 20 or so spam messages a day. Akismet had marked the messages correctly, but I did not like checking for spam in Akismet. I installed the SI Captcha anti-spam plug-in to force anyone commenting to use a captcha. So far, there is no more comment spam.
I noticed in Google Webmaster tools that the Google spider was not finding many of my old pages. I also noticed that I was getting hits on my old Archive pages that had a different format than WordPress’s archives.
I installed a plug-in called Permalinks Moved Permanently, which is a very nice plug-in that did not work for me. The idea was great, but it did not work because of the .shtml or .html at the end of each blog URL. I heavily modified the little program to handle this. It detects a “404 page not found” and attempts to reformat the URL. It also detects the old archive format and redirects to the new archives.
I have a worst case where the URL is totally messed up where I break out the keywords in the URL and do a fancy search on the database for matches so that, even in a totally mangled URL, I will usually get a hit on something. This was necessary because WordPress seems to have lost the word “a” in some URLs and shortened others.
It looks like now that all the incoming links are finding the right posts or archive. Spiders are being redirected to correct pages and I have well formatted posts with clear descriptions and title so that surfers can find me easily. I am already showing an increase in traffic. Google has only re-spidered about 25% of my site, but by the time it is done I will have a much better website.
I have installed the wp_e_commerce package, but only because I am interested in how it works. I will set it up as a test to sell some of my microphone products or maybe even books. I am not sure that I it is something I need, but it is definitely an important feature to make monetize WordPress.
There are a few other plugins that I am considering. I was interested in some of the social networking type of plug-ins that do things like twitter and facebook your blog posts. Also there is a plug-in that will email anyone that leaves a comment to remind them about the blog, but this verges on spam.
I am thinking about doing this for money. I would expect to get around $50 an hour for this, and I can install and fix a website in about 5 to 10 hours (including the modifying a template). If you have $250 to spare and want someone to do a custom WordPress install, consider giving me a call (the “call me” button on the blog actually works). I offer a money back guarantee. If you don’t use my installation then I will cheerfully uninstall it for you and not expect payment.