This past weekend, I finally had the chance to unveil the new blog design for Jeffro2pt0.com. Because of the new design, I figured it would be a good time to reformat my WordPress installation similar to how you would reformat a PC to place a new installation of Windows on it. This gave me the opportunity to use the built in WordPress Export/Import migration tools.
WordPress eXtended RSS:
Because I didn’t want the trash in my current WordPress database to be inserted into the new database, I chose to export my content via WordPress into an WXR File. WXR stands for WordPress eXtended RSS. This WXR file will contain your posts, pages, comments, custom fields and categories. Even though it’s not officially listed as exporting your tags into the WXR file, the tags ARE included. In my case, I was exporting my content from a WordPress install that was at version 2.3.3 to a fresh install of 2.3.3. I’m not sure if earlier versions of the WordPress Exporter actually export the tags, but if you know the answer, let me know by leaving a comment.
Exporting only the CONTENT portions of my WordPress database into this WXR file saves me from having any of the trash that was within my database being inserted into my fresh install of WordPress. The export process produced a file that came in at 3.2 megs in size.
Once I jotted down a list of all of the plugins I knew that I wanted to have installed, I did a fresh install of WordPress. Let me say that, I was very surprised to see just how fast the WordPress front/back end loads with only 2 plugins installed and activated. I was tempted not to install any plugins, but alas, I trudged on.
After installing a fresh copy of WordPress, I clicked on Manage-Import. I noticed that import files had to be 8 megs in size or lower. This is probably due to the php.ini file setting for the size of scripts that can be processed on the server. Some servers set this to 2mb while others such as AnHosting (My Webhost) appear to be a little more lenient. If your file is more than the hard coded limit, I believe you can over ride the settings via some entries in your .htaccess file or you can split the WXR file into multiple files. If I am wrong, please correct me in the comments.
Tags As Numbers Uh Oh!
After my data was imported and I checked out the front page of the blog, I noticed something strange. All of my tags had turned into numbers! They functioned as normal, but everywhere there was suppose to be a tag ended up being a TAG ID number instead. A quick search on the WordPress support forums brought me to THIS FORUM POST which explained the problem.
The current version of the WordPress exporter has a problem where it incorrectly exports the tags. The fixed WordPress exporter is already in the trunk and will be shipped with WordPress 2.5. However, thanks to Otto42 for linking to the fixed file, I was able to download the fix and apply it to my local WordPress install. The bad news is, I had to delete all of the data that the previous import put into place. However, after applying the fix, I re-exported the data from the database and then re-imported the data to my live WordPress blog and my Tags were now WORDS instead of numbers.
After the import was in place, I went through my check list and reinstalled all of the plugins that I found that I actually use. After that was finished, I had a fresh install of WordPress with fresh installations of ONLY the plugins I found valuable to my blog. I hope by now, you sort of get the drift as to why I explain this as reformatting WordPress.
Things I Learned:
Because I performed the first and second import on a live blog, this sent feed readers that were subscribed to my blog into a frenzy as it looked like my blog had over 400 new posts.
In my blog design, I like to use the EXCLUDE parameter for the wp_list_pages function. Because the importing reassigns ID numbers to all of your posts, pages, comments ect, my exclude parameter broke. I had to manually reassign the ID numbers to the exclude parameter so they matched up with the appropriate pages.
I lost my Akismet spam tracking. Before I did the reformat, Akismet had blocked over 12,000 spam messages on my blog. Because of the fresh install of WordPress and the WXR file not exporting that data, my Akismet stats have started over.
I had to re-configure a number of settings. Not everything is exported into the WXR file, so be prepared to re configure your blog if you do a fresh installation.
The WordPress Codex currently has 28 different articles for explaining how to migrate content from one system to WordPress. This includes migrating from popular CMS’s such as e107, Mambo, TypePad, Typo and even WordPress into WordPress. I’ve noticed plenty of people stopping by the WordPress IRC chat room requesting assistance due to a botched export/import. Have you had the chance to go through the export/import process? If so, please share your experience in the comments below.