Posted on 9 October, 2008 By Kim Woodbridge

How to Upgrade Wordpress Manually

Lift Button Upgrade (by Danny McL)

Anyone who’s been visiting for awhile knows that I’m not a big fan of the Auto-Upgrade plugin for WordPress and that I prefer upgrading manually. I’m not against the plugin. I think it’s made it possible for more people to upgrade their own WordPress installations. I prefer manually upgrading because I have more control (and I’m not a control freak, just a scheduling freak) and I am better able to troubleshoot the problem when something goes wrong with the upgrade.

And things do go wrong. Frequently. That being said, the Auto-Upgrade Plugin works fine when the upgrade is minor, such as from a .1 to a .2 version. But if you are upgrading from WordPress 2.0 to 2.6.2, I highly recommend you do it manually. If you aren’t familiar with the process, I recommend someone do the upgrade for you.

I think many people don’t want to manually upgrade because the instructions in the WordPress codex are daunting. Delete this, don’t delete that, oh wait, delete that unless… I think you know what I mean.

So, I thought if I listed the steps that I take for a manual upgrade, that it might make the task less frightening for the rest of you. Some may have more efficient ways of doing a manual upgrade and I would love to hear about it. This is just the way I do it and it works for me.

  1. Download and extract the WordPress upgrade to your hard drive.
  2. If plugins are important to you, make sure your plugins are compatible with the version of WordPress that you are upgrading to. You can do this be searching google on WordPress and the name of the plugin.
  3. Backup your database. You can do this through cpanel or via the WordPress databases backup plugin. You are already backing up your database, right?
  4. Test the backup. It should look like a big text file of running together gibberish. If you don’t have that, then stop the upgrade
  5. Backup your WordPress files - all of them. Backup the wp-admin, wp-content, wp-includes, and all of the files in your blog directory. You can do this via cpanel or via ftp. I use ftp and copy them all over to my hard drive so I have them while upgrading. You should be backing up these files on a regular basis as well. Thinkdave has a great guide to using ftp with Filezilla.
  6. Test the backup. Spot check and make sure the files are there - especially wp-config.php and your wp-content folder.
  7. Install and activate the Maintenance Mode plugin. One note here - if you are backing up from a much older version of WordPress, skip this step. I find it can cause unnecessary problems and it’s better for your site to simply be down temporarily then to have to struggle to bring it backup later.
  8. Deactivate ALL of your plugins, except for Maintenance Mode. Please don’t skip this step
  9. Logout of WordPress
  10. Ok - back to FTP or your cpanel file manager.
  11. Delete WP-Admin - yes, the entire folder
  12. Delete WP-Includes - if you have language files, keep those. I haven’t upgraded a site that had them so most of you are safe in deleting the entire folder. And remember, we already made backups.
  13. Delete all of the files in the blog directory such as wp-cron.php, wp-login.php, etc except for wp-config.php (that contains your database information). But if you get delete happy, you already have a backup.
  14. DO NOT delete wp-content. Some upgrade instructions say to keep some of the files but not all of them. 98% of the time leaving that directory alone is just fine.
  15. Now we are ready to upload the new WordPress files
  16. Upload the wp-admin directory
  17. Upload the wp-includes directory
  18. Upload the main blog directory files such as wp-cron.php and wp-login.php The upgrade files should not have wp-config.php but, if it does, don’t overwrite yours.
  19. In your web browser, go to your site http://www.yoursite.com/blog/wp-admin/upgrade.php
  20. You may be asked to login. Login.
  21. If it was more than a .1 version upgrade, you may get a message saying your database needs to be upgraded. Click the button and upgrade.
  22. Activate and upgrade your plugins.
  23. If all is well, you are done and are now enjoying your freshly upgraded WordPress

A couple of issues that I have run into have been the following:

  1. Can’t login after upgrade. Clear your cache. Clear your cookies. If you still can’t login, delete the plugins folder. You have a backup so they can easily be replaced. This is in wp-content/plugins/. Those three methods have always corrected this problem for me. If you still can’t login, search the codex or contact someone like me for assistance.
  2. Scheduled posts no longer work. So far this problem only seems to happen on Windows IIS servers. I have a possible solution here or you can contact me for assistance.
  3. Main page loads but get 404 errors on all sub pages. This is probably a permalinks problem. Delete your .htaccess file and replace it with the backup.

Out of all the upgrades I have done for myself and for others those are the only problems that I have encountered. So, I trust my system. If you still don’t feel comfortable upgrading, ask someone for assistance.

    photo credit: Danny McL

    Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
    • bodytext
    • del.icio.us
    • Facebook
    • Mixx
    • Google
    • Ma.gnolia
    • Reddit
    • TwitThis
    • E-mail this story to a friend!
    • StumbleUpon
    • Technorati

    Related Posts:
    WordPress: Are You an Early Adopter?
    If You Could Have Any WordPress Plugin, What Would You Want?
    5 Annoying WordPress Plugins
    WordPress Helper: A Useful Firefox Extension
    (Anti) Social-Lists 10/26/08
    Posted In : Backup | Howto | WordPress


    If you enjoyed this post, please subscribe to my RSS Feed



    Comments

    Thanks for the post!

    I’ve been letting Fantastico do my upgrades, but I have never been comfortable about everything being backed up and put back properly. So I’ve decided to do things myself from here on out. Your post is an excellent guide!

    Mike

    Mike Nichols’s last blog post - Mental Illness Awareness Week: A Cause We Can All Support!

    Kim:

    I can’t believe you would say that about the directions WordPress has to upgrade?? OMG, I am occasionally somewhat of a techno geek but wow, not user friendly. I used the upgrade plugin to upgrade last time. It was SO easy! However….I have not been able to use the scheduled post feature since. I don’t know if that has anything to do with anything but… I am off to try your suggestion with the cron.php thingy. I’ll let you know…

    Kim Woodbridge
    Gravatar

    October 9, 2008

    @Mike - You’re welcome. Many people use fantastico and are happy with it. I’ve never upgraded with it but did use it one time for a WordPress installation. Like I said, this is just my way of doing it. Maybe I am a bit of a control freak ;-)

    @BloggerNewbie - I’m very interested to find out if the cron.php solution fixes the scheduled post problem that you’re having.

    Are you being sarcastic about me saying the directions in the codex aren’t user friendly? I’m not quite sure. They are complicated even for people who like technology. After writing this today, however, I’m not sure if my instructions are any less complicated.

    Thanks Kim. Bookmarked and stumbled. :)
    Vered - MomGrind’s last blog post - Am I The Only One Who Thinks This Is Weird?

    Thanks for the mention Kim. I agree; while using a plugin to upgrade your WordPress site is a simpler solution, it sometimes fails.

    And unless you’ve taken the time to learn how to manually upgrade your site, things may end up getting messy.

    Also, it’s worth bearing in mind that once you learn to manually upgrade, you’ve also taught yourself to manually backup. Always remember rule no.1 with any any website activity: YOU CAN NEVER HAVE TOO MANY BACKUPS. Trust me, I’ve lost enough data to know that this is true.

    Dave’s last blog post - Local marketing continued

    Maybe I shouldn’t tempt fate, but I’ve never had any serious problems using WPAU to upgrade. The first upgrade I did with it was from 1.5 to 2.5 and it worked first time, not a single glitch, all plugins reenabled perfectly.

    David Bradley’s last blog post - Nobel Prize for Chemistry 2008

    Kim Woodbridge
    Gravatar

    October 10, 2008

    @Vered - Thank you!

    @David - Maybe I’m just cursed ;-) I’ve never had any problems on any of my own sites just ones I’ve done for others. It’s hard to tell what other people have already done and what’s going on with their plugins and code. Like I said in the article, I just want control over the process. My way is definitely not for everyone.

    To be sure. What kinds of issues did you see when it failed? I did have a whole spate of 500 internal server errors with one site, but that site gives 500s sporadically regardless of what I do, and I reckon it would have happened with a manual upgrade too.

    Incidentally, hope you don’t mind me repeatedly taking inspiration from your words…

    David Bradley’s last blog post - Nobel Prize for Chemistry 2008

    Kim Woodbridge
    Gravatar

    October 10, 2008

    Hi David,

    Glad to be inspirational :-) Now I need some inspiration and some time for today’s post :-)

    I haven’t used the plugin recently - I don’t get errors that are really any different than ones with manual upgrades but I’m better able to figure out what is wrong with the manual ones - perhaps that is just the way my mind works. There was one instance where someone did an upgrade with the plugin, which just stopped and the site was inaccessible. That ended up being related to redirects to a sub-folder and multiple htaccess files.

    I have another small site that I once tried to auto upgrade and it fails repeatedly - I’ve never been able to determine the cause of that one and don’t even try to auto upgrade it anymore. It does have non-standard urls and some wacky php code in it that I cobbled together so maybe that’s the problem.

    Aha! Your mentioning multiple .htaccess files has given me yet more inspiration, although not for a blog post as yet…just checking whether my site with the repeated 500s has a dodgy copy of a .htaccess file, could be the clue I’ve been looking for, thanks!

    David Bradley’s last blog post - Nobel Prize for Chemistry 2008

    Kim Woodbridge
    Gravatar

    October 10, 2008

    David - hahaha - I love British words like dodgy. :-)

    Dodgy is a good one…yes. I once wrote a magazine article back in the very early 1990s about the differences between US and UK words - it was entitled Hickies, Bangs, Lovebites, and Fringes…something like that. Talked about suspenders/braces (lingerie component/trouser support) and vests (singlet and waistcoats), diapers (nappies) and nappies (napkins) etc…it amused me at the time as I’d just spent six months travelling and working in the US.

    David Bradley’s last blog post - Nobel Prize for Chemistry 2008

    Kim Woodbridge
    Gravatar

    October 10, 2008

    @Dave - Sorry I missed your comment earlier - you got stuck in the spam folder - I have no idea why.

    I’m glad to see that someone agrees with me about how important it is to learn the process without relying on a plugin.

    And your FTP guide is the best - I was thinking of writing one but I just refer to yours instead.

    Awesome guide Kim . I am bookmarking this post , will refer to it when i upgrade wordpress

    Madhur Kapoor’s last blog post - Check and Generate MD5, CRC32, SHA1 signatures with Crypto Helper

    Kim Woodbridge
    Gravatar

    October 12, 2008

    Hi Madhur,

    Thanks! I was afraid I made it too complicated but I think people are finding it useful.

    Kim:

    Yeah, I was being sarcastic. I agree, the directions are challenging even for the techy. Your directions are great. My scheduled post problem did not get corrected but I’m not too confident I did it right. I did several other tweaks at the same time and now my RSS won’t work. I am getting a headache!

    Kim Woodbridge
    Gravatar

    October 13, 2008

    Hi - I wasn’t quite sure :-)

    Oh no - you made one of my classic mistakes - changing too many things simultaneously ;-)

    @ Kim

    Yeah, then I had to swear never to tweak again! So while I was tweakin this weekend, the only way to fix my RSS was to remove WP 2.6.2 and reload (thx to your great directions-I wasn’t nervous) WP2.5.1! Everything worked fine, RSS is back. BIG YAAAAH! I still can’t publish at a future date! Which I could in the prior version? Tricky huh? Very interesting!

    Kim Woodbridge
    Gravatar

    October 14, 2008

    I’m glad you got things working again but we’re still back to why your scheduled posts won’t work. Do you know what kind of server you are hosted on?

    by kind of server do you mean who hosts my blog? Yahoo hosts it but I don’t know what ‘kind’? How would I find out?

    Kim Woodbridge
    Gravatar

    October 14, 2008

    Hi,

    Most web sites are hosted on Linux servers although some are on Windows servers that use IIS server software. This is separate from the webhost that you use. People that I’ve fixed the scheduling problem for were using Windows based servers at their webhost.

    I took a quick look at Yahoo’s hosting page - they list a lot of offered features but nothing about the type of servers they use. You could ask them if your site is hosted on Linux or Windows - it would help narrow down a solution to the problem.

    I’m kinda searching blind here cause I don’t know what I’m looking for but in the help section when I typed IIS the question:

    Which PHP function does Yahoo Support,

    No IIS Administration functions

    was the only entry I found, I didn’t find anything about Linux…

    does any of this point you in the right direction?

    Kim

    I wasnt sure if you were aware of the other quirky thing to this problem. when you push publish for your future time, the post clears like it’s gone to pending, however, it’s gone into never never land, never to be seen again, unless of course you use scribe fire. they are listed in the posts as if they are posted! How’s that for quirky!

    Kim Woodbridge
    Gravatar

    October 14, 2008

    Hi - Can you give me a link to the yahoo help section you were looking at?

    I have not experienced the scheduled post feature causing a post to disappear. I do randomly hear people of twitter say that “wordpress ate my post” but I’ve never had that happed to me. I do, however, frequently write my posts in a text editor rather than in the WordPress one.

    I’m not sure what is going on with your WordPress installation but you may want to save the data and your theme files, delete the installation and database and start with a fresh install. I’m not sure…

    http://vsp.help.yahoo.com/index.html?lang=us&prop=smallbusiness&query=iis

    as far as the fresh install I would save the wp-config file and the theme file and then totally wipe out the root directory, then add all the files for wp?

    (sorry, I’m hogging your whole comment section)

    Kim Woodbridge
    Gravatar

    October 14, 2008

    Hi - I don’t think I should advise you through the comments - I can help to a point.

    For a completely fresh installation you would want to backup your database too and then delete it and create a new one.

    This might be too much - there might be a less drastic solution.

    maybe I’ll wait until 2.7! Thanks for your thoughts!

    I tried to use the WordPress auto upgrade plugin and it wreaked havoc on my host’s server. My cgi and php scripts were shut down until I could assure them that I had fixed the offending script. I now upgrade manually and I haven’t done it often enough to remember how to do it correctly. Thanks for posting the information.

    Kim Woodbridge
    Gravatar

    October 28, 2008

    Hi Herb,

    Thank you for visiting and commenting. Sorry you had trouble with the plugin - sounds extreme. I’m glad my guide will be useful the next time that you upgrade.

    RSS feed for comments on this post. | TrackBack URI

    Leave a comment



Recent Comments

    • Raju: damn good... thank u so much!! Raju´s last blog post - ...
    • Carla: My blog is relatively new and so far Google works pretty well for the time being. I never searched for my own blog thou...
    • Kim Woodbridge: @Cath @ Carla I located this information about the problem you are having with visual text editor. Maybe it will hel...
    • Kim Woodbridge: @Raju - Thank you for visiting and commenting. I think there are plugins that already do that. You could take a look...
    • Kim Woodbridge: @Matt - Thanks! I really appreciate it. Maybe I'll try google search this weekend....
    • Matt Gio: @Kim - So far google has been doing pretty well for me. But if I come into any problems I'll let you know. BTW - I adde...
    • Raju: Hi, i would like to have a plugin which can give me a list of available tags related to the post I am going to publish,...
    • Kim Woodbridge: @Stratos - That was another thought I had - how many people even use the WordPress search function. I use it occasional...