Yesterday WordPress 3.0.2 was released to the public. It has several security updates and some new functionality. From time to time you may want to update your WordPress installation to the latest version. You might want to do this because you’ve seen a message at the top of your Dashboard telling you that a new release is available, because you’ve been made aware of some useful new functionality, or because a security fix has been released.
Whatever the reason for updating, before getting started it is best to check the current minimum requirements page first to make sure that your web host has the required versions of PHP and MySQL. (If you are not sure, then your hosting provider should be able to tell you.)
Take a Backup
The next thing to do is to take a backup of your database. All your posts and Pages are held in the database, so you will need to have a copy of it in case, for whatever reason, you change your mind after upgrading and need to go back. If you are not sure how to backup your database, then complete instructions can be found in the WordPress Backups section of the Codex.
The final preparation step is to disable plugins. Now, you don’t have to do this, but every now and again a plugin hasn’t been updated to work with the latest version of WordPress, and causes a problem after the upgrade. So, it’s best to try and avoid that, yes? You can easily disable your plugins by heading to the Manage Plugins page in the Dashboard, changing the “Bulk Actions” pull down menu to “Deactivate” and clicking “Apply”.
Ready to Update
Now that you’ve checked that you’re ready to update, you’ve turned off your plugins and you’ve got your backup, it’s time to get started.
There are two methods for updating – the easiest is the Automatic Update, which will work for most people. If it doesn’t work, or you just prefer to be more hands-on, you can follow the manual update process.
Current versions of WordPress (2.7+) feature an Automatic Update. You can launch the automatic Update by clicking the link in the new version banner (if it’s there) or by going to the Tools -> Upgrade (or Update for version 3) menu.
Once you are on the “Update WordPress” page, click the button “Update Automatically” to start the process off. You shouldn’t need to do anything else and, once it’s finished, you will be up-to-date.
Note that your files all need to be owned by the user under which your Apache server executes, or you will receive a dialog box asking for “connection information,” and you will find that no matter what you enter, it won’t work. See
man chown. If you do not know which user runs the httpd the output of
ps auxw | grep -E 'http|apache|www' or
ps auxw might help, seeman ps.
If you have customized the default or classic themes without renaming them, you should not use the automatic upgrade, as it will overwrite your changes – you should use a manual update instead.
If the automatic upgrade doesn’t work for you, don’t panic, just try a manual update.
These are the short instructions, if you want more check out the extended upgrade instructions. If you experience problems with the Three Step Update, you may want to review the more detailed upgrade instructions
For these instructions, it is assumed that your blog’s URL is
Step 1: Replace WordPress files
- Get the latest WordPress zip (or tar.gz) file.
- Unpack the zip file that you downloaded.
- Delete the old
wp-admindirectories on your web host (through your FTP or shell access).
- Using FTP or your shell access, upload the new WordPress files to your web host, overwriting old files.
NOTE – you should replace all the old WordPress files with the new ones, including those in the root directory like index.php, wp-login.php and so on. Simply copying the contents of the zip you downloaded over the top of your existing files should achieve this. Make sure you copy all the sub-directories as well. Don’t worry – your wp-config.php will be safe.
Be careful when you come to copying the wp-content directory. You should make sure that you only copy the files from this directory, rather than replacing your existing wp-content directory. This is where your themes and plugins live, so you will want to keep them. If you have customized the default or classic themes without renaming them, make sure not to overwrite those files, otherwise you will lose your changes. (Though you might want to compare them for new features or fixes..)
Lastly you should take a look at the wp-config-sample.php file, to see if any new settings have been introduced that you might want to add to your own wp-config.php.
Step 1.5: Remove .maintenance file
If you’re upgrading manually after a failed auto-upgrade, delete the file .maintenance from your WordPress directory using FTP. This will remove the “failed update” nag message.
Step 2: Update your installation
Visit your main WordPress admin page at /wp-admin. You may be asked to login again. If a database upgrade is necessary at this point, WordPress will detect it and give you a link to a URL like
http://example.com/wordpress/wp-admin/upgrade.php. Follow that link and follow the instructions. This will update your database to be compatible with the latest code. You should do this as soon as possible after step 1.
Step 3: Do something nice for yourself
If you have caching enabled, your changes will appear to users more immediately if you clear the cache at this point (and if you don’t, you may get confused when you see the old version number in page footers when you check to see if the upgrade worked).
Your WordPress installation is successfully updated. That’s as simple as we can make it without Updating WordPress Using Subversion.
Consider rewarding yourself with a blog post about the update, reading that book or article you’ve been putting off, or simply sitting back for a few moments and letting the world pass you by.
Your update is now complete, so you can go in and enable your Plugins again. If you have issues with logging in, try clearing cookies in your browser.