It’s possible to upgrade a Joomla 3.1 system to 3.7 with only a few hassles. Here’s what worked for me.
First, use the Joomla Update (Components | Joomla Update from the administrator backend menu) component to update Joomla. This will get you to 3.2.x.
Update all of your plugins (System | Control Panel | “Updates are available”). Note at any stage, some plugins may not work, may not be updated, etc.
Run the database fix tool: Extensions | Manage, Database, Fix button.
Unpack Joomla_3.5.1-Stable-Update_Package.zip in the Joomla root.
Run the database fix tool again: Extensions | Manage, Database, Fix button.
Log out from Joomla.
Auto update to the latest Joomla via update component (Components | Joomla! Update).
I was using an older version of Artio JoomSEF, so I had to manually update that via Components | Artio JoomSef | Upgrade | update button.
If you’re using any styles from JCK, you will have to use a fix from the Joomla forum. In short, edit the file plugins/system/jcktypography/jcktypography.php and comment one line :
// $stylesheet[$url]['media'] = null;
K2 seemed to have forgotten about the thumbnail image for each article, so this likely needs to be fixed manually.
Older versions of MijoShop don’t seem to support registering when checking out. There’s a problem with the “setDefaultEncryption()” function that I’m still working through.
At least once in the process, I needed to wipe my browser’s cookies for my website. I couldn’t log in, and this fixed that.
Other than that, most plugins seem to work, articles are displayed, users can log in, and SEF URLs are maintained.