Upgrading to WordPress 2.8 – Don’t Panic!

Posted by Glenn Reffin on June 12, 2009 at 7:59 pm.
wordpress logo

wordpress logo

Yesterday I upgraded my WordPress 2.7.1 version to 2.8. I approached this with considerable trepidation because I remember how easy it was a few weeks ago to install the blog for the first time. In my experience, anything that is easy to install is hard to upgrade!

So, I took a cautious approach and I’m really relieved I did.

If you are considering upgrading to WordPress 2.8 from earlier versions make sure you back up all your site files and your database first.

Most people I have interacted with over the last 24 hours have had an easy time upgrading, but there is a significant group (me included) who have had problems. It is not clear why these problems have occurred – whether it is to do with hosting platforms or certain plugins.

For anyone considering upgrading, this post by Jeremiah Hoyet, 5 Ways To Avoid WordPress Update Headaches, will give some other useful advice that you should consider before reaching the point of upgrading. I certainly wish I had read this post before heading off to do it for myself.

Towards the end of this post, there is a section specifically on troubleshooting your installation. There are a number of known problems that can occur following an install, especially Error 500 Internal Server Errors. I have found two solutions to this particular issue, that have been effective on my own installation.

Here is what you can do to make your install as safe and easy as possible:

Back-up

Make sure you have complete back ups of all your site files and your database immediately before you start any upgrade process. This is essential in case anything goes wrong and you need to revert to your previous state. Store these files on a different server or on a local drive rather than on the server hosting your installed WordPress. You will likely find an FTP client useful to download all your site files and the WordPress plugin phpMyAdmin is useful for backing up your database quickly.

Deactivate all your plugins

Once you have backed everything up, deactivate your plugins. There are some plugins that are incompatible with the new version of WordPress, or require further upgrade before they will work. Some plugins have also been upgraded as part of the new version. Having them active during the install could cause conflicts.

Do not use automatic upgrade

This does not work consistently on all hosting platforms. I seem to have problems with automatic upgrades for plugins and the WordPress application. While this does work on most platforms, it doesn’t on all platforms.

Download the zip

You can download the WordPress installation files from WordPress.org Download the zip file to your local drive and unzip it on your local drive.

Start deleting

Use an FTP client to go to your remote server containing your blog. Hold your breath and start to delete files and folders. Don’t worry, if it all goes wrong, you always have a back up. Delete the following files in the order given below:

  • wp-admin/
  • wp-includes/ (except wp-includes/languages if you have an older version installed)
  • readme.html
  • wp.php
  • xmlrpc.php
  • licence.txt
  • wp-content/plugins/widgets (if you have this installed)
  • wp-content/plugins/hello.php
  • wp-content/plugins/akismet/
  • All other files in the root EXCEPT those mentioned in 6 below.

DON’T DELETE:

  • wp-content/
  • .htaccess
  • wp-content/images/
  • wp-config.php

Upload

Now it is time to upload each item in the list below as a separate item. Do it in the following order:

  • wp-admin/
  • wp-includes/
  • wp-content/plugins/hello.php
  • wp-content/plugins/akisment/
  • wp-content/plugins/index.php
  • all the files in the root directory (except wp-config-sample.php)

Login to wp-admin

Once all the files are uploaded, you need to log in to your new install. In your browser, go to wp-admin by typing into your browser: www.yourblogdomain.com/wp-admin/ (changing ‘youblogdomain.com’ with your actual server domain.

Upgrade your database?

If asked to upgrade your database, click the button then log in as normal. If you get an error message, such as ‘unable to find wp-admin’ then delete the wp-admin folder on your server and upload it again.

Plugins

So, every time you have listened to those ’25 Best WordPress Plugins’ posts, and downloaded hundreds of plugins to use on your blog, today is the day that you might regret it! Identify any plugins that need to be upgraded, download them, delete them from your server in your FTP client, then upload the new files. This is a manual install and is the safest and most reliable method to use at this stage.

Activate each plugin one by one. Do not, under any circumstances do a Bulk Activate. You need to test each and every one of the plugins individually to make sure they work and the system remains robust.

Any plugins that do not work (I have had problems with All-in-one-SEO and YARPP), delete from your server, delete from your local drive, download again and upload fresh copies, try again.

Settings

Once you have a running install, check all of your blog settings. Some configuration settings may be missing and will need to be reset.

Troubleshooting

When I first installed version 2.8, I followed the quick process and this resulted in not being able to identify the /wp-admin/ address; so I could not log into WordPress. This is when I followed the procedure above and managed to install a working version of 2.8.

I did have a number of other glitches which were mildly annoying. For example, the Screen Options pulldown would not work on the Dashboard, so I could not set the number of columns I wanted to use; side panels would not open by pressing on the down arrow, automatic plugin downloads and installs hanging and failing to install. These problems appear to have been fixed by the fixes to the Error 500 Internal Server Error issue below.

Error 500 – Internal Server Error

There is a problem that has been experienced by thousands of users who have visited this post. I have updated this section of the post to provide the latest information available to me.

The problem occurs usually when logged in to wp-admin and concerns an “Error 500 – Internal Server Error” message, or failure to load the various administration panels for editing posts, etc.

Causes of this problem:

I was aware of one cause, which is a memory hungry plugin, or a plugin that is constantly checking how robust your install is, such as wp-security-scan 2.7.1. These plugins are not compatible with version 2.8 of the WordPress platform and need to be updated. Some plugins have been updated already to be compatible with the new version. Unfortunately other plugin authors have been slow in updating their plugins.

Thanks to Codedifferent.com for identifying the second problem in their blog post: Codedifferent.com identified that some hosted server configurations run PHP for users without giving permission to change memory usage. This causes version 2.8 to become flaky as it calls on PHP to operate and it has insufficient memory. The blog identifies the solution, which I have reproduced below for your convenience.

Solutions

The solution to the first problem that causes Error 500 Internal Server Error messages is to uninstall any plugins that are not compatible. If you followed the procedure above, you should have a fairly good idea which plugins are affecting your system. There are lists of compatible plugins available but frankly I do not entirely trust these to be accurate with this issue. It is better to be sure that your plugins work on your installation on your server configuration. If you have installed incompatible plugins and can’t get into your wp-admin/ area, connect to your server using an FTP client and physically delete the plugins that are causing the problem (or go through one by one, testing your installation each time until you find the culprit).

The solution to issue two is to create your own PHP.INI file and save it to your /wp-admin/folder. Do this easily by opening a text document, putting the following code in the text document, saving it as ‘php.ini’ and uploading it to your /wp-admin/folder. The code is:

memory=20MB

That is it. Combined, these two solutions should fix any Error 500 Internal Server Error problems and some other irritations.

Other problems?

I have recently added another post about problems with white screen and Error 404 pages. You can find out more by clicking on the link.

A problem shared…

A problem shared is a problem halved.

By adding your own experiences in the comments section you can help other readers to solve their own problems with WordPress 2.8 upgrades and others may be able to help you to solve your problems. So, would you like to talk about it?

  • thanks! good info, helped me find my problem.
  • спасибо!
  • Вы радушны!
  • Great content, very helpfull. The web needs more great sites like this.
  • Mike
    Thanks a lot, it took many hours of hard work but I saved my blog. NEVER clicking that auto update link ever again.
  • Hey Glenn,

    Appreciate your response. What I tried:

    1. Replaced the entire wp-admin folder: was a little closer to functionality after that.
    2. Created and added the php.ini file: didn't see a difference at that point
    3. Replaced the entire wp-includes folder: bingo everything working!

    I noticed that my ftp server wouldn't allow me to fully delete my old wp-includes folder the last time I updated, in January 2009. I could manually eliminate many of the files in there, but couldn't get rid of a lot of folders and couldn't even change the file permissions in order to try that as a workaround. I have renamed all those orphan files and they are still sitting in my directory. Thoughts?

    Finally, I formerly used "subscribe to comments" plugin but see it isn't on the tested and approved list for 2.8. Any recommendations on that front?
  • Katie

    I'm really glad you managed to sort out your problems. I had a similar problem when I upgraded my version but when I FTP'd into the site and manually deleted the files individually, this worked. It might be worth checking if there are any hidden files that are preventing you from deleting the folders. Alternatively, if you can rename the files, you should also be able to move them. Try moving them into a new folder and then try deleting it.

    I don't currently use a comments subscription plugin on my site. I do however use Feedburner Feedsmith, this is a plugin that you can download once you have signed up to Google's Feedburner. With respect to the plugins-compatibility list, bear in mind that it is probably out of date by now. As I said in my previous comment, be warned that the list is not completely accurate and should only be used as a guide. On looking at the plugins at Wordpress.org, I noticed that the subscribe to comments plugin says it is compatible upto 2.8. It might be worth downloading the latest version and trying it out.

    By the way, I've heard good reports about DISQUS, but I have not tried it myself yet. There is potentially a very good reason to start using it because Google is starting to implement a point deduction system for external links that are not followed (in comments). DISQUS is supposed to counter that problem, and it also allows you to subscribe to comments (apparently). As I said, I haven't tried it, just read about it a couple of times. You can read about it at Mashable.

    Hope this helps

    Glenn
  • Hi,

    Thanks for the post...
    My blog is working now...
  • Not sure what all internal problems may still exist but here's where I am with my upgrade:

    OS: Mac 10.5.7
    Upgraded a fresh downlload manually from 2.6 to 2.8 after backing up all files from previous installation and the database. Deactivated plugins.

    After various errors popped up, I got all the permissions working and was able to log into the wp-admin area, where I succeeded in running the WP upgrade program. Got message that it was a success.

    Could now get onto my blog and it looks normal on the surface. Could also login to admin area (yeah! almost done) but the admin area doesn't seem to be connecting to its CSS and images are missing. The layout is barebones with css stripped out, in other words.

    Been through all the forums I could find addressing this but cant fix.

    Thanks for the opportunity to post here.
  • Katie

    Thanks for your comments. I'm sorry you are experiencing difficulties but you are not alone!

    I have a couple of suggestions that may help you.

    First of all, try disabling your theme and using the default theme. If you find it difficult navigating to it in your wp-admin panel, you can FTP to your blog site and remove all the themes except the default theme from your /content/themes/ folder (moving them up one level temporarily will do the trick - you don't have to delete them.

    If this works, your problem is related to your theme. You can put all the themes you moved back in the themes folder and try reactivating it - sometimes this works. Or you can search for an update to the theme.

    Second, if that doesn't work, download the upgrade package again from Wordpress.org/download/, extract it to your local drive. FTP to your site, find the wp-admin/ folder and delete it. Then upload only the wp-admin/ folder from the fresh copy you just downloaded. This is where the admin css files are stored alongside the admin pages and functions.

    Let me know how you get on.
  • Thanks for the info, added a php.ini file via FTP and I can once again access my admin panel :)
  • Chris

    Pleased that my post has helped you solve your problem. Please visit again sometime.
  • LK
    Hi,

    I hope you can help me. I upgraded from 2.6.5 to 2.8 and got this error when I tried to log in to the admin panel.

    Fatal error: Class 'WP_Widget' not found in /home/thecolou/public_html/blogtest/wp-includes/default-widgets.php on line 15

    Thanks in advance.

    LK
  • I've done some reading up on this one and, as usual, there could be several reasons for the error. First off, try disabling all your plugins and then see if you can log-in.

    To disable your plugins you will need to connect to your server using an FTP client, go to your wp-content/plugins folder and rename it (temporarily) as TEMPLUG. Then go to www.yoursite.com/wp-admin/ and attempt to log in. It might be worth pressing CTRL + F5 just to be sure the cache is cleared.

    Let me know how you get on with this. If it doesn't work, we'll try something else.

    Can you let me know what operating system your server is using and how it is set up?

    Good luck!

    Glenn
  • LK
    Hi Glenn,

    Thanks for the reply. I tried what you suggested but still could not login (same error). I am using an iMac and have managed to upgrade to wordpress v2.7.1 but even then I had problems upgrading.

    LK
  • LK
    Hi Glenn,

    It's fixed! Turned out I did not delete all the files in the root directory!

    LK
  • LK,

    I'm really pleased you have solved this problem. It is often a good idea to check each of the files in the directory against those you are deleting. There should be very few that are retained (such as php-config.) that contain your database connection details.

    Thank you for sharing your problem and the solution to it.

    Regards

    Glenn
  • Nice article. Good job.
blog comments powered by Disqus