It took a little work, but I’m now migrated from Joomla to WordPress. Here’s how I migrated:
- Used Akeeba Backup to get a full backup of my Joomla site and download it locally.
- Created a local linux virtual machine and installed Joomla, then restored the Akeeba backup.
- Created another local linux virtual machine and installed Joomla.
- Using the FG Joomla to WordPress tool, I migrated the site.
- After migrating, I was able to do cleanup and customize the new site.
- Created a backup of the new WordPress site using UpdraftPlus, then uploaded to my GCP instance.
- Created a new Docker WordPress container and configured Nginx for the new container to support testing.
- Restored the WordPress backup to the new container and did final testing and cleanup of the site. One important step was fixing URL references in the database. I connected to MariaDB and used these queries:
UPDATE wp_options SET option_value = replace(option_value, 'http://www.oldurl', 'http://www.newurl') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET guid = replace(guid, 'http://www.oldurl','http://www.newurl'); UPDATE wp_posts SET post_content = replace(post_content, 'http://www.oldurl', 'http://www.newurl'); UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://www.oldurl','http://www.newurl');
- To go live with the new site, it was just a matter of changing the back-ed port forwarding in Nginx. Both the live and testing sites are forwarding to the same back-end container so all works as it should.
- Then a final clean-up Nginx port forwarding and the database using the above SQL queries so that I can keep the testing site separate.
- And of course, remove the Joomla container and database.