A Comprehensive Guide to Migrating from Joomla 1.0 to WordPress

by Abel Cheng on September 23, 2010

in Blogging

I have a site that run on Joomla for more than 3 years. I wanted to migrate after realizing that I like WordPress better and I find it easier to use.

But one thing held me back.

I have hundreds of pages that have been indexed by search engines, especially Google. I don’t want to put all my efforts into building this site to waste after I migrate to WordPress as the old URLs would have been rendered useless. This would cause frustration not only to searchers but also to me as they would land at my 404 error pages.

I put on hold the migration plan until I found this article – which contains the solution to my biggest worry. He is my star.

I regained my confidence and started planning to convert my Joomla site to WordPress. The rest, as they say, is history.

It is now been about a week since I migrated my Joomla site to WordPress. To be exact, I migrated from Jommla 1.0 to WordPress 3.0.1.

When I was searching for articles about this topic, there were not many talked about the tasks you need to do AFTER the migration. Every one talks about the migration itself, which is quite simple to do.

Since there is lack of such documentation, I would like to record my personal experience on migration from Joomla 1.0 to WordPress. Not only about the migration but also include things you need to do after the migration so that you can still enjoy traffic sent by search engines and linkbacks.

I will do my best to keep this as simple as possible… and here it is:

  1. Backup your site. I used a feature provided by my web host to back up the whole site. This is important before you begin your migration. Just in case anything goes wrong, you still have your site running.
  2. Migrate all your posts to WordPress. I used a script called Joomla to WordPress Import Wizard that I found on OneStopJoomla.com. Unfortunately I hit a “Query failed” error at Step 3. I took a look at the coding and found out that there was a mismatch of field between Joomla and WordPress table structures. I did some changes to the script and manage to get it work. Instructions on how to use this script can be found on the site.
  3. After the import, check and make sure the categories in WordPress are correctly assigned to your articles.
  4. Don’t forget your static pages. I just did some copying and pasting.
  5. Copy (not Move) the “Export” folder into the root directory of your site. To make it work, you have to change the URL in WordPress Dashboard > Settings > General. Change both the WordPress address (URL) and Blog address (URL) from http://www.domain.com/export/ to http://www.domain.com/. Again, before you do this, it is better to do a backup of your site.
  6. Make sure the home page and inner pages run properly without error. If everything runs smoothly, you can now remove/delete your Joomla files and folders. What I did was to rename all of them. If I need anyone of them, I just rename it to its original name.
  7. Make sure the formatting of articles is not out.
  8. Set your permalink in WordPress. Do this in Dashboard > Settings > Permalinks
  9. Replace Joomla tags such as {mosimage}. You can do a quick SQL search in phpMyAdmin for all the articles that contain string “{mos” by using command “LIKE”. Once you have removed these tags, do the SQL search again to make sure you have completely removed them. I replaced {mosimage} with the corresponding URL of the image.
  10. Replace old self-referenced URLs (that is Joomla URLs) with new WordPress URLs in your articles. This is very tedious if you have many URLs in your old Joomla.
  11. Install plugins that you require – such as Recent Posts, Popular Posts, etc.
  12. Make sure you copy scripts such as Google Analytics, Aweber, etc. to your theme’s header or footer.
  13. This is very important if you don’t want to lose your link juice. To make sure your old indexed pages can still be found in search engines, you have to install 3 awesome WordPress plugins: Useful 404’s, Simple 301 Redirects, and Google XML Sitemaps. Without these plugins, I would have still in Joomla. Each plugin serves different purposes.
  • Useful 404’s – This is very useful. It detects 404 error pages and immediately sends an email to inform you which page caused the error so that you can fix it. It is an on-going process as I still do this until today. To get it work, you need to modify your theme’s 404 page by including a special command [<?php useful404s(); ?>] as mentioned in the instructions of this plugin.
  • Simple 301 Redirects – This is a no-frills plugin. But it serves the function I want. After you get an email from Useful 404’s, you need to redirect the old URL to the corresponding new URL. This is where Simple 301 Redirects comes into place. I tried using Redirection plugin but it caused an error in my site. So I stay with Simple 301 Redirects.
  • Google XML Sitemaps – This plugin helps you generate a Google-compliant sitemap for your site. This expedites the process of indexing your new pages in WordPress.

The list above is based on my own experience. It worked for me pretty well.

I agree it is a lot of work. But the good thing is it is a one-time job only. You do this once but reap the benefits many times over. The list can give you a good headstart.

(By the way, the theme I use for my newly migrated website is Genesis Theme Framework by Studio Press. A premium WordPress theme that I highly recommend.)

I am glad I did the migration. I hope this guide will help you to have a problem-free and seamless migration to WordPress.

Previous post:

Next post: