Normally upgrading WordPress is as simple as clicking the Updates button. This is a pleasure when you have six live sites and two test/dev sites. The latest upgrade to version 3.3 from 3.2.1 was not as straightforward as is normal. Updates informed me there were several plugins and themes with upgrades available. OK, quick scan to check what was changing, check all, upgrade. Voila! It is done. Backup datebase. Export blog XML. Ready to move from 3.2.1 to 3.3…
Click the Update Now button and the latest WordPress zip archive is downloaded and installed. Three of the sites sites I have were upgraded without a problem, the installer prompting me to update the database and two clicks later enjoying the fruits of someone else’s hard labour. The other three live sites “updated” to the current version, i.e. 2.3.1 and not 3.3 as expected. Refreshing the page did nothing and in one case the admin pages disappeared. Logging out of the site resulted in the front page of the site appearing blankly. I could log back in by appending wp-login.php to the base URL and the admin pages reappeared after clicking through the database upgrade steps.
A quick Google search revealed that I was not alone with this issue. It also showed that there were almost as many solutions as there were problems. Some people had issues with incompatible plugins with workarounds like renaming the /plugins folder in /wp-content and creating a new empty /plugins folder. This forces WordPress to disable all the plugins. The new /plugins folder is deleted and the old one renamed back to /plugins. Through the admin panel each plugin is then reactivated (one at a time) and the site tested until the culprit is located.
This did not work for me.
What did work was switching themes (all my sites use TwentyTen) on those sites with issues to TwentyEleven. And then re-installing TwentyTen. The sites with issues all used child themes based on TwentyTen and this upgrade to 3.3 seems to have broken the link between the parent stylesheet and the child theme. One TwentyTen was reinstalled I could then activate my child theme and, with a bound, I was up an running again.