Press enter to see results or esc to cancel.

The 16 Step Process for Updating a WordPress Theme

I get twitter DMs pretty regularly with people asking for help with various things on their WordPress sites. They range from “will you rebuild my site for free?” to “I need a few little things done and I’m happy to pay you.

Sometimes it’s simply that their website has an error and they aren’t sure how to fix, so they’re looking for some guidance, not really a handout. In these scenarios I try and help out when I have the time.

Last night I got one of these DMs. A big ugly PHP error right on the slider on their homepage. An eyesore to say the least. We’re going to say the DM came from someone named Gertrude because I’m writing this blog post and I can pick any name I want.

I took a look around Gertrude’s site and it became clear that an outdated version of their slider plugin (Revolution Slider) and their theme were both out of date and needed to be upgraded. Should be an easy enough fix, right?

Authors note: I’ve been publicly critical of Revolution Slider a few times but this is more about how frustrating this process can be for website owners than any of my personal beefs with the plugin itself.

So let’s walk through the process of updating a premium theme and the Revolution Slider plugin.

Step 1: Where’d you buy it?

Since Revolution Slider can be bundled with themes or sold separately, the first thing we have to do is determine how the plugin ended up on the site in the first place. Most novice WordPress users didn’t setup their theme, and the person who helped setup their site didn’t talk to them about theme licenses, so Gertrude is unsure of whether or not she even has an account for this theme and plugin combo.

Possible Plugin Purchase Locations

  • Directly from the author as a standalone plugin
  • Bundled in any thousands of premium themes on sites like ThemeForest or Mojo Marketplace.
  • The person who setup the site used a copy they had from another client build and skipped the conversation about needing a license for future updates.

Step 2: Ensure you have license keys in place for automatic updates

Except this isn’t that straight forward. Many many premium themes don’t allow for automatic updates at all, and even if they do, it’s typically some kind of convoluted update process outside of the standard WordPress updates routine.

This leaves you in a scenario where you need to login to an account and download the latest version directly. BUT YOU DON’T KNOW WHERE IT CAME FROM.

In Gertrude’s specific scenario she had purchased the theme from Mojo Marketplace via her Bluehost account. She had since moved hosting so because her Bluehost account was now closed, and their system uses single sign-on, she was no longer able to login to MojoMarketplace either.

This is at least two dead ends already where without a premium theme sherpa, Gertrude would be lost in the WordPress template wilderness for the rest of her years.

In my experience at least half of the time people end up buying another license of the plugin or theme because they don’t know what else to do. I’d be very interested to know what percentage of their revenue comes from repurchases.

Step 3: Download the Software and Install It

Hahahaha. Ok let’s say we finally get access to Gertrude’s account and can find a license key or a download. Now what? I need to download a giant zip archive (literally over 100MB) of bundled plugins, a theme, some HTML documentation and I’m supposed to do what with it?

Very few of these bundles even come with installable plugins and theme files, and even if they do, it’s not like WordPress allows me to overwrite my existing theme or plugins by uploading newer versions.

And yes, I know there are plugins that allow you to work around that but it’s not a good idea from a technical perspective (one missed file copy and your site is bricked) and the standard WordPress user isn’t going to have any idea how to navigate those workarounds anyway.

So the final option is to upload the theme or plugin files through FTP. In 2019 we still commonly have user experience paths that land on users transferring files directly to a server over an archaic web protocol.

Step 4: ????

At any point in this journey your everyday WordPress user would have given up and lived with garbage code showing on their site or been forced to hire a company to come in and save the day for them.

I understand that at a very high level the web is mostly held together with duct tape and spit, but I also find it remarkable that the most popular CMS on the internet (by a huge margin) still requires this level of tiptoeing and expertise from website owners.

I’ll also concede that most of these plugins and themes are using their own conventions and bypassing the roadways laid out by core WordPress, but how is a user supposed to understand the difference?

An Almost Happy Ending

I’m going to get Gertrude’s site fixed. It’s something I do all the time at work so I’m happy to help out. The site will be fine but let’s do a quick recap of what has to happen for this update process to finally be complete.

  1. Gertrude sees her site is broken
  2. Gertrude messages a total strange on Twitter
  3. Twitter Stranger agrees to help
  4. Gertrude creates WP user login for Twitter Stranger
  5. Twitter Stranger sees that the theme and Rev Slider plugin need to be updated
  6. Twitter Stranger also notices no license keys are active
  7. Twitter Stranger request login for theme account
  8. Gertrude can’t access theme account because it’s tied to her now-expired hosting account
  9. Gertrude contacts marketplace support for a separate login
  10. Gertrude obtains new login and sends it to Twitter Stranger
  11. Twitter Stranger backs up the current site (something I didn’t even address above)
  12. Twitter Stranger requests FTP/SFTP login
  13. Gertrude has to contact host for FTP/SFTP account creation
  14. Gertrude sends FTP/SFTP login to Twitter Stranger
  15. Twitter Stranger separates massive zip archive into separate parts
  16. Twitter Stranger updates theme and plugins.

Success? I mean, I guess the error message is gone.