This page contains a more detailed version of the upgrade instructions.
wp-contentfolder; Special Exception: the
wp-content/plugins/widgetsfolders should be deleted.
wp-includes/languages/folder--if you are using a language file do not delete that folder;
.htaccessfile--if you have added custom rules to your
.htaccess, do not delete it;
robots.txtfile--if your blog lives in the root of your site (ie. the blog is the site) and you have created such a file, do not delete it.
That's the overview of the upgrade process. Please continue reading the Detailed Upgrade Instructions.
Remember, if you do encounter problems, re-read the Instructions below to insure you've followed the proper procedures and consult Troubleshooting: Common Installation Problems.
The following are the instructions that explain the above steps in more detail. Please read all of the instructions before starting.
If you plan on upgrading across more than two major releases, please consider upgrading incrementally to avoid potential conflicts and minimise the risks of database damage. For example, if you plan on upgrading from 2.5 to 3.9.1, upgrade to 2.7 first, followed by 2.9, and finally 3.9.1. Essential, it's okay to skip one release, but never skip TWO when upgrading.
Older versions of WordPress can be downloaded from the release archive.
Perform a backup of your database. All of your WordPress data, such as Users, Posts, Pages, Links, and Categories, are stored in your MySQL database. Please read Backing Up Your Database for a detailed explanation of this process.
It is extremely important to back up your database before beginning the upgrade. If, for some reason, you find it necessary to revert back to the 'old' version of WordPress, you may have to restore your database from these backups.
Back up ALL of your files in your WordPress directory and your .htaccess file. Typically, this process involves using an FTP program to download ALL your WordPress files from your host to your local computer. Please read Backing Up Your WordPress Site for further explanation.
If you have made changes to any core WordPress files, or if you've got customized Plugins or Themes, you will want to have a good backup of those files. It is extremely important to back up your files before beginning the upgrade. If for some reason you find it necessary to revert back to the 'old' version of WordPress you will need to upload these files.
Verify that the backups you created are there and usable. This is the most important step in the upgrade process! The verification process involves making sure you can see the backup files on your local computer (or wherever you've stored them) and that you can navigate into any sub-folders. If the files are in a zip file, make sure you can open the zip file. Also consider opening a .sql file in an editor to see if the tables and data are represented.
In your Administration panel, under the Plugins choice, deactivate any Plugins. Because of the changes to WordPress, some Plugins may conflict with the upgrade process. If you're not able to access the administrative menus you can deactivate all plugins by resetting the plugins folder.
If you have not completed the first four procedures, STOP, and do them! Do not attempt the upgrade unless you have completed the first four steps.
The best resource for problems with your upgrade is the WordPress Support Forums, and if you have problems, the volunteers at the WordPress Support Forums will likely ask if you have completed the first four steps.
Download and unzip the WordPress package from http://wordpress.org/download/.
The WordPress package will be extracted into a folder called wordpress.
Why Delete? Generally, it is a good idea to delete whatever is possible because the uploading (or upgrading through cPanel) process may not correctly overwrite an existing file and that may cause problems later.
DO NOT DELETE these folders and files:
wp-imagesfolder--only older installations from 1.5.x days will have this folder;
wp-includes/languages/folder--if you are using a language file, and it is here rather than in wp-content/languages/, do not delete this folder (you might want to move your language files to wp-content/languages/ for easier upgrading in the future);.
.htaccessfile--if you have added custom rules to your
.htaccess, do not delete it;
wp-contentfolder, do NOT delete them.
Delete these Files and Folders:
wp-* (except for those above), readme.html, wp.php, xmlrpc.php, and license.txt;files; Typically files in your root or wordpress folder. Again, don't delete the
wp-config.phpfile. Note: some files such as wp.php may not exist in later versions such as 2.7.
wp-includesfolder; If you have a language file here, remember not to delete the
wp-content/cachefolder; You only see this folder if you are upgrading FROM WordPress 2.0.
wp-content/plugins/widgetsfolder; You only see this folder if you previously installed the Sidebar Widgets plugin. The Sidebar Widgets code conflicts with the built-in widget ability.
How to Delete? There are several ways to delete the files from your WordPress site. You can use your FTP Client, or if you have access to Telenet or SSH you can use that. Some host providers also provide the ability to delete files and folders.
index.php) not included by the
cpcommands below, copy them as well:
cp wp-config.php .htaccess backup
cp -R wp-content backup
rm wp*.php .htaccess license.txt readme.html xmlrpc.php
rm -rf wp-admin wp-includes
cp backup/wp-config.php .
cp backup/index.php .to restore
wp-config.php, .htaccess, and any content files you've added or altered into the new wordpress directory. Then, rename the old one (to archive it), and move the new one into its place.
With the new upgrade on your local computer, and using FTP, upload the new files to your site server just as you did when you first installed WordPress. See Using FileZilla and Uploading WordPress to a remote host for detailed guidelines in using an FTP Client to upload.
NOTE: If you did not delete the
wp-content folder, you will need to overwrite some files during the upload.
wp-content folder holds your WordPress Themes and Plugins. These should remain. Upload everything else first, then upload only those WordPress files that are new or changed to your new
wp-content folder. Overwrite any old versions of default plugins with the new ones.
The WordPress default theme has changed so you will want to upload the
wp-content/themes/default folder. If you have custom changes to the default theme, those changes will need to be reviewed and installed after the upgrade.
Using a web browser, go to the WordPress admin pages at the normal /wp-admin location. WordPress will check to see if a database upgrade is necessary, and if it is, it will give you a new link to follow.
This link will lead you to run the WordPress upgrade script by accessing wp-admin/upgrade.php. Follow the instructions presented on your screen.
Note: Make sure the database user name registered to WordPress has permission to create, modify, and delete database tables before you do this step. If you installed WordPress in the standard way, and nothing has changed since then, you are fine.
If you want to run the upgrade script manually:
If you experience difficulties with login after your upgrade, it is worth clearing your browser's cookies.
In your Administration > Settings > Permalinks panel update your Permalink Structure and, if necessary, place the rules in your .htaccess file. Also see Using Permalinks for details regarding Permalinks and the .htaccess file.
Please review the Plugin Compatibility List and Theme Compatibility List, or plugin/theme authors, to find plugins and themes compatible with your new WordPress version. Upload and install new versions of your Plugins and Themes, if necessary.
Use your Administration Panel, Plugins, to activate your Plugins. If your plugins do not appear on the Plugin Compatibility List and you are not sure if they will work correctly with the new version, activate each plugin, one at a time, and test that there are no problems before continuing.
Beginning with WordPress Version 2.6, three (3) security keys, AUTH_KEY, SECURE_AUTH_KEY, and LOGGED_IN_KEY, are used to insure better encryption of information stored in the user's cookies. Beginning with Version 2.7 a fourth key, NONCE_KEY, was added to this group.
If you don't find the keys in your
wp-config.php file, add the keys definitions with reference to Editing wp-config.php - Security Keys, and upload to your server.
Please review these resources to see what's new in WordPress:
When using the Fantastico upgrade process to upgrade from a pre-Version 2.2, Fantastico will use the wp-config-sample.php file to regenerate a new wp-config.php file. By doing this, two new values, DB_CHARSET and DB_COLLATE, are placed into the wp-config.php file. Those lines should be deleted from your wp-config.php if you are upgrading from a pre-Version 2.2 (like 2.0.10 or 2.1.3) to Version 3.9.1. A detailed explanation about DB_CHARSET and DB_COLLATE can be found in Editing wp-config.php.
|Language (english, native)||Version (new to old)||Remark|
|Chinese, 简体中文||2.2.1 to 2.2.2, 2.1 to 2.2, 2.1.2 to 2.1.3, 2.1 to 2.1.1, 2.0.7 to 2.0.9, 2.0.6 to 2.0.7, 2.0.5 to 2.0.6, 2.0.4 to 2.0.5|
|Hungarian, magyar nyelv||2.1.2 to 2.1.3, 2.x to 2.1, none specified|
|Italian, italiano||fino alla 2.7, dalla 2.7|
|Korean||1.5.x, 2.0.x to 2.1, 2.0.4 to 2.0.5|
|Spain, Castellano||2.2 to 2.2.1, 2.2.1 to 2.2.2, 2.2.2 to 2.2.3, 2.3 to 2.3.1, 2.3.1 to 2.3.2, 2.3.2 to 2.3.3, 2.3 to 2.5|
|Vietnamese, Việt||2.5 to 2.6|
|Turkish, Türkçe||none specified|
|Russian, Русский||old to new|
|Ukrainian, украї́нська мо́ва||any 2.0.x to 2.3.x, 2.0.5 to 2.0.6|
If you are considering upgrading to WordPress Version 3.9.1, but you are at Version 1.2, then follow the 1.2 to 1.5 upgrade as describe in Upgrading From WordPress Version 1.2 to 1.5. Once you are upgraded to Version 1.5.x, then follow the instructions as listed above to upgrade from 1.5 to 3.9.1.