WordPress 3.0 Upgrade: What to Expect

With virtually any WordPress release (or the release of any open-source software, for that matter), there are bound to be bugs.

In a lot of cases the bugs are minor, and are just annoying. In other cases, these “bugs” can completely disable your site. Kind of like the difference between a mosquito bite and being attacked by a swarm of wasps.

WordPress 3.0 is no different. Almost as soon as the official release came out, reports of bugs starting pouring in. In the vast majority of cases, these bugs had to do with either customizations based on deprecated code or plugins that aren’t yet compatible with 3.0.

And in virtually every case, easy fixes have already been found. Of course, there are also a number of things you can do prior to upgrading to prevent problems. Read on for some tips, and some of the common bugs you might run into.


Turn Off Your Plugins

This is arguably one of the most important steps in performing an upgrade (another big one is running a full backup). Disabling the plugins your site uses prevents them from conflicting with the installation process or with the way your site functions once the upgrade is complete.

When the upgrade is finished, all you’ll need to do is go into the admin side of your website and deactivate each one prior to clicking the upgrade link. If you have plugins that are installed but aren’t activated, you may want to either uninstall them prior to upgrading or make a list of which plugins you had activated.

Now, let’s say you’ve upgraded without deactivating your plugins, and now your site is throwing a bunch of errors. If you’re lucky, the error message itself will include the file or folder name of the plugin, which makes it much easier to deactivate the offending plugin without having to deactivate and reactivate every plugin on your site.

In some cases, a defective or conflicting plugin can even prevent you from logging into the Dashboard of your site (if it doesn’t, then go into the Plugins tab and deactivate each one until your error messages go away). In this case, you’ll need to FTP into your site and rename your plugins folder (something like plugins_old is usually the best idea). Now, if you rename your plugins folder back to the original name, it should have left all of your plugins deactivated. If it did, then just log in to your Dashboard and reactivate them one-by-one. When you get to the one that’s causing the errors, you’ll probably have to go back in through FTP and rename or delete the offending plugin folder/files.

If, for some reason, your plugins aren’t deactivated when you rename the plugin folder back to its original name, then leave the name changed (to plugins_old, or whatever you’ve chosen) and create a new plugins folder. Then, copy your plugins into that folder one-by-one, reactivating and testing each one.


Overly Minimal Themes Have Been Deprecated

The “Default” theme has been part of the WordPress install package pretty much since WP was first released. Because of this, some theme designers used the Default theme as a sort of parent theme, using the files it included as the basis of their theme. Because of the way WP was set up, it didn’t even require officially declaring a parent theme.

With WordPress 3.0, that’s no longer an option. 3.0 uses a new default theme, Twenty Ten. As expected, the markup is quite a bit different than the old “Default” theme, which would effect the look of any themes based on it. Because of this, you’ll need to create a full version of your theme that doesn’t use “Default” as the parent theme.

Luckily, this is pretty easy. Just copy the needed files from “Default”. Make sure you test everything when you’re done to verify that nothing funny is happening with the theme (it’s best to do this on a copy of your theme, rather than the original).


Some Reported Bugs

Because of the complexity and extensibility of WordPress, there are bound to be bugs with virtually any upgrade. You might get off easy and have no issues, especially if you use a minimal number of plugins. But the more plugins you use, the more likely you are to run into problems. Below are a few that seem to be cropping up regularly. If you’ve had other problems or have heard of others, please post them in the comments below (preferably with a link to the solution!).

Stuck in Maintenance Mode
There have been numerous reports of sites getting stuck in Maintenance Mode after upgrading, even going so far as to block the wp-admin area. Luckily, there’s a fairly simple fix for this one. Just FTP into your WP site and delete the .maintenance file in the root folder of the site (you may need to turn on showing of hidden files and folders to see it).

Plugins and Themes Causing Issues with Static Pages
There has been at least one report of the “User Messages” plugin causing the static pages settings of a blog to stop working. Another reported culprit for the same issue is the Redirection plugin. There have been reports of at least one theme also causing this problem, the “Bueno” theme from Woo Themes. These are all anecdotal, and no guarantee that these themes/plugins would cause the same problems across different site installations.

Events Calendar Plugin Causing Errors
There have been multiple reports of the Events Calendar plugin causing fatal errors in WP similar to this one: Fatal error: Cannot redeclare is_rtl() (previously declared in /var/www/web1503/html/wp_mu/wp-includes/locale.php:347) in /var/www/web1503/html/wp_mu/wp-includes/locale.php on line 349. To fix the problem, disable the Events Calendar plugin by renaming the folder in your plugins folder.

Most Issues Related to Plugins
As you can see from the instances mentioned above, most issues when upgrading WordPress are caused by incompatible plugins. This is why it’s so important to disable your plugins prior to upgrading, and then to reactivate each one individually when the upgrade is complete. Sure, it take a bit more time, but would you rather spend a few minutes doing this, or hours after the fact trying to track down which plugin is causing the error?

Now, most plugins that are compatible with WP 2.9.2 should work fine in WP 3.0, but there are some plugins that were technically throwing errors in the background in 2.9.2 that will raise a bigger fuss in 3.0. And by “bigger fuss”, I mean they’ll keep your site from working. So don’t assume that just because the plugins are compatible with 2.9.2 that they’ll automatically work just fine in 3.0.


Steps to Hassle-Free Upgrading

Upgrading WordPress isn’t particularly complicated, especially since it now includes automatic upgrades. But that doesn’t mean you should just click the upgrade link and go have a cup of coffee. You need to perform a few vital tasks before and after clicking that link to ensure you don’t have problems when the upgrade is complete. Here’s a short rundown:

  • Do a backup
  • Put a maintenance page up on your site (optional, but a good idea)
  • Deactivate all your plugins
  • Upgrade
  • Verify the install worked and that your theme is still functioning properly
  • Reactivate plugins one-by-one, testing between each one
  • Verify everything is functioning as it should
  • Take down your maintenance page

The complete upgrade instructions, including instructions for performing a manual upgrade in case you run into issues with the automatic one, can be found in the WordPress Codex.


WordPress MU Upgrades

One of the biggest changes to WordPress 3.0 is that WordPress MU (Multi-User) is now incorporated into the main code. If you’re upgrading your MU site, there are some special things you’ll need to do.

One thing is that after the upgrade is complete, you’ll need to update your network settings. You’ll also need to make some edits to your wp-config file, and to some rewrite rules. Developer’s Mind has a great, step-by-step post covering how to successfully upgrade MU.

Now, if you want to upgrade your 2.9.2 installation of regular WordPress to include the new MU features in 3.0, it’s a bit more complicated. You’ll need to go into your wp-config file and add the following line:
define( 'WP_ALLOW_MULTISITE', true );

Then you’ll need to go into the Network settings under Tools in your Dashboard. The settings there are pretty self-explanatory. You’ll need to specify whether you want network blogs to be in a sub-domain or in a sub-directory, and then there’s some code you’ll need to insert into your wp-config file to enable everything. It’s all spelled out very clearly in the Network settings.

Written exclusively for WDD by Cameron Chapman.

Have you had issues with upgrading to 3.0? Or found a trick that makes upgrading easier? Please share them in the comments…

  • http://premiumthemeclub.com/ PremiumThemeClub

    Some quite useful tips > Thanks for sharing

  • http://teographics.com Teodoro Lopez

    Thanks for this article and tips on what to do before upgrading! I had a situation with “Fatal error: Cannot redeclare is_rtl()…..” now I know what to check for.

    =D Thanks a bunch

  • http://www.webdesign-bureau-of-mauritius.com Sachin

    I’ve encountered some errors with feeds upon upgrading to WP3. This must have been plugin related but I was too lazy to look for the culprit. So I wrote a full article to clear any WordPress version from that error. The article is here: http://www.webdesign-bureau-of-mauritius.com/wordpress-3-feed-error-fix

    • http://elizawhat.com Elizabeth Kaylene

      Thanks!! A client of mine is having feed issues and I never even thought to check and see whether she had upgraded to 3.0. Now I know what to look for.

      • http://www.webdesign-bureau-of-mauritius.com Sachin

        You’re welcome Elisabeth.

  • http://stylishwebdesigner.com/ Tanya

    Even I was facing problems with plugins after upgrading to 3.0. I had to uninstall sexy bookmarks plugin :(

  • http://www.digitalstyle.com.au Nico

    Just upgraded my site and this was a life saver, one of the plugins i was using reportedly was locking people out of wp-admin. Thanks Alot :)

  • http://xioup.com Xioup

    Awesome post guys, we have been running WPMU for a few months and are looking forward to upgrading to 3.0. We’ll definitely refer to this post as a guideline, and I’ll tweet this too!

  • http://www.techiecorner.com SoGua

    Always test the upgrade at the development server before implement to the production. this will save you from many unpredictable incident. :)

  • http://www.natashastorm.co.za Storm

    Helpful as always! :)

  • http://twitter.com/z0r z0r

    Recently tested a custom theme for wordpress 2.9+ on localhost and found out that it just doesnt work for 3.0
    To be honest, i dont need the 3.0 functions on this website, so 2.9 is ok for me. But in advance we should develop themes to be 3.0+ compatible.

  • http://www.venturetothetop.com Dee

    Turning off plugin’s before a major upgrade is a great tip. It’s goes along side backing up in order to ensure everything goes as smoothly as possible.

    That said, the upgrade to Version 3 was pretty painless and made upgrading all my plugin’s a breeze with just one click.

  • Selcuk

    I’ve found many missing “?>” tags in the files…

  • http://www.jordanwalker.net Jordan Walker

    Thanks for the tips, they are very true to form.

  • http://www.mintfactory.co.uk Anna

    Thanks – very useful! It’s always tricky when upgrading WordPress especially when your template is customised and you use a lot of pluggins. Your tips are great!

  • http://wpmututorials.com Andrea_R

    If you have more questions about the Network feature, I go over them here:

  • David

    The events-calendar plugin issue is finally fixed. Upgrade to 6.6.2. And change your [[EventsCalendarLarge]] markup to [events-calendar-large].

  • Shiva

    in addition that I personally would add to safe upgrading is to never use fantastico for any type of major upgrade. Always upgrade straight from the program itself. If you leave your plug-ins and use fantastico you have about a 99% chance of running into trouble

  • http://www.willforsyth.co.uk will forsyth

    Good advice. didnt thinks of doing these simple steps when upgrading my wordpress install. I must of been lucky not spotted any errors as of yet. apart from permalinks not linking to my static pages when they are set to show post name. not sure if this was the case before the upgrade or not as I only noticed it after.

    Will remember this procedure when I next upgrade

  • http://wpblast.com Dan @ wblast

    Nice overview. I was hesitant to upgrade my sites to 3.0 at first. Luckily everything went smoothly. Like you said, it is very important to do a complete backup before upgrading anything.

  • http://cardeo.ca cardeo

    Great post, was looking for something exactly like this. A bit scared to update my blog but this will help

  • http://www.kliky.com Ed

    Thanks for the tips on turning off the plugins. Nice to see what others have encountered before having to take care of this myself.

  • http://www.thomascraigconsulting.com Thomas Craig Consulting

    Great post, I tend to wait a little period before upgrading wordpress, usually about 6 weeks after the initial release or after the first version upgrade.

  • http://elizawhat.com Elizabeth Kaylene

    I haven’t upgraded my other WP sites yet because I didn’t know what changes 3.0 might do to my themes (since they’re all custom). So far, everything is working fine on my personal blog, so I guess it’s time to set aside time to work on my clients’ sites!

  • http://www.designfacet.com Behzad

    Thank you for the great article. Good to watch out for when upgrading.

  • http://www.dataqweb.eu DataQ Web

    We use WP 3.0 already and we have no issue. But there are several blogs we need to update. The information provided here will sure help us avoid any trouble

  • Seann

    There are lots of opportunities which wordPress provides for a some one is is not interested into the technicalities of web but is contended with its own core expertise.

    Earlier, which was use only used by bloggers and avid writers, to communicate their ideas to the rest of the world is now being used by many big corporations as a face of their company.

    WordPress is easy to install and operate and is certainly the most widely used CMS, may be due to its simplicity. But you need to get it integrated before taking off and PixelCrayons is one best solution provider which can help you with it.

  • http://www.neoconsole.com ipad case

    oh yea, i had those problems before , errors just pops up left-right-center – -‘ thanks for the great info !

  • http://creativeaddict.co.za Lisa

    I upgrade WordPress through a wonderful plugin called Automatic Upgrade that goes through 5 steps of backing up files, databases, disables plugins, updates and reactivates plugins and is QUICK! Amazing plugin aand I suggest it to anyone using WordPress

  • http://www.alejandroperazzo.com Punta del Este

    when i have some time im gonna try it out.

    tank you a lot

  • http://www.web-lovers.de Rolf

    Nice Article, thanks for sharing !

  • http://whyiprayintheshower.com/ Darryl Duke

    Out of concern I haven’t hit the upgrade button yet, but after reading this article and the comments I think I’m ready to do it. lol. Thanks.

  • http://www.design-technology-media.co.uk Steven

    Why was the most obvious problem listed.

    Twenty Ten doesn’t even validate. Problems with ARIA and role.

  • http://www.bigtunainteractive.com BigTuna Interactive

    I’m not a fan of the “maintenance page”. If you leave this up too long, it will send the search engine spiders the wrong message and negatively effect your rankings. If its just a couple of minutes/hours though, it shouldn’t be an issue.

  • http://www.titus2atthewell.com Chelsey

    I upgrade to WP3.0 yesterday and now I have NO plugin tab in the admin panel. Any suggestions?

    Thanks! :)