Hallelujah! I thought I couldn’t complete ironing out the kinks that WP 2.3 blasted on my blog by today, but I finally did it. The new database schemes definitely wreaked havoc on the site, particularly due to my heavy reliance on plugins. Yeah, I know I should have tried the upgrades out in my sandbox before putting the upgrade in production. Blame it on my overconfidence.
I spent most of my time trying to hack the Category Visibility Plugin-RH Rev (CatVis Rev) to no avail. My struggle has mainly to do with modifying the SQL so that the parent-child category support is reflected using the new category tables; now that a category’s parent ID is separated into a different table (term_taxonomy), I needed to do a tricky JOIN statement with the table terms in order for the plugin to function the way it should. I finally surrendered, browsed the 2.3 compatible plugins and got myself the Advanced Category Excluder which, although not as extensive as CatVis Rev, will do just fine for my blog as I only need category filtering on my front page and feeds.
Thank God the Top Commentators Widget is spared from the DB taxonomy change, or else that’s another headache to handle.
If you’re planning on upgrading to 2.3, here are a few handy tips:
- Download the WordPress Upgrade Preflight Check and run it to identify which existing plugins you have will work or won’t work with 2.3.
- If you’re unlucky and do have non-compatible plugins, go to the 2.3 Plugin Compatibility list to find out if you can get an alternate plugin that will work as well as your existing one.
- Do the same with your theme, if you’re not using the default WordPress version or if you didn’t create the theme yourself.
- Do a back up of both your theme and database before the upgrade; you’ll never know if you need to roll back to the older version if WordPress 2.3 doesn’t work for you. I don’t know of an automated way of downgrading should you need to. The manual way would be (at least that’s how I do it, and takes me around 15 minutes tops):
- Deleting all WP files, except wp-config.php file and the wp-content folder.
- Uploading your older versions of WP and theme, making sure not to overwrite wp-config.php.
- Logging into MySQL, drop all of the newer tables, and restore the backup database.
If you use CPanel’s Fantastico, even better — just delete the install, including the database, and then re-install the whole thing again and restore your database using MySQL. That should take you about 7 minutes, based on my experience.