Wordpress to WPMU Conversion
So I just finished installing and converting this site to WPMU, mainly to test it out and delve deeper into wordpress.
The migration from the old site to the new, went remarkably smooth and the site was only down for about 5 minutes which I class as a big success (Also, I’m sure my method is not the most elegant). Because of the fact that Wordpress and WMPU share 99% of the same codebase, the conversion was painless.
I am going to briefly explain how I did it.
Step 1 – Backup
Backup, Backup, Backup!
Using ftp, everything was backed up, as in the complete installation and all sub directories of the existing wordpress installation. Then I dumped the entire mysql database for keithdonegan.com. Now if we bodge it up, it doesn’t really matter, we have the most important thing, our data.
Step 2 – Download
Download WPMU and overwrite all existing wordpress files and folders. Now delete the .htaccess and wp-config.php files. Pop over into the browser and refresh your site. You should now see an install screen. (Note: my site is for personal use and gets only a few visitors, so If your site is big and gets alot of traffic, put up a blank index.php file to protect yourself against malicious users.) Fill in your database details as per your original wordrpess installation and log in. You should now have a working install of WMPU.
Step 3 – Migrate
So, we now have a spanky new WPMU install, pretty cool huh? Our next step is to migrate all of our old content into WMPU. While having a peek through PHPmyadmin, I see some new tables created by WMPU: wp_1_ etc. Keep a note of the these.
Now I select the main tables which are below and export only these tables. Also, select the ‘Add DROP TABLE’ checkbox.
- wp_comments
- wp_commentmeta
- wp_links
- wp_postmeta
- wp_posts
- wp_terms
- wp_term_relationships
- wp_term_taxonomy
With the sql file, I open this in a text editor and begin to replace the old table names with the new ones.
For example. When fixing the wp_posts table for use with WPMU, I simply do a find and replace like so:
Find wp_posts Replace wp_1_posts and do this for all of the 8 tables above.
Step 4 – Patch
Wordpress MU adds a ‘/blog’ to your posts and removes the www from the url by default. If you have some content indexed in Google and don’t want to lose any traffic, there are 2 optional steps left.
Download and activate this plugin.
And add this to your .htaccess file to convert www traffic to the new non www url.
RewriteCond %{HTTP_HOST} !^keithdonegan\.com$
RewriteRule (.*) http://keithdonegan.com/$1 [R=301,L]
Now, you are done and have a Wordpress Mu installation, congrats!
Conclusion
As mentioned at the start of this post, this is most likely not the most elegant solution but It worked absolutely fine for me and should work for you too. Also, in regards to the media files, you can replace these permalinks in mysql and point them to the new files/ folder, but as this is a small site, I’m fine with my images pointing to my old wp_content folder.












