The virus part is going to be off-topic, but yes a fresh install is the way to go.
What I would do to upgrade the site is:
- Backup everything– PHP and database
- Install the old site on a development server.
- Before running the site, replace all of the core files with new 2.8
ones from the archive. This will hopefully fix the suspected virus problem. - Then start updating release by release until you get current. Do not
try to leap-frog over more than one or two minor releases. - Then you can fix anything that is broken. Unless the original site
is running hacked core files I don’t think this step will be too
much trouble, though you will haveNotice
s to fix and perhaps a
few other things.
The reason I recommend upgrading release by release, rather than trying to upgrade all at once, are:
- Personal experience
- I’ve seen a lot of issues over on the wordpress.org forums
apparently caused by jumping too many releases - There is note in the Codex to this effect “… it’s okay to skip one
release, but never skip TWO when upgrading.”
I have looked at the
upgrade code and, yes, it seems like WordPress should upgrade itself
over multiple releases but does not always appear to do so
correctly– perhaps issues like timeouts get in the way.