Podcast Episode

408 – Keep Your WordPress Site Updated

Announcements

Is there a plugin for that?

With more than 50,000 plugins in the WordPress repository, it’s hard to find the perfect one. Each week, I will highlight an interesting plugin form the repository.

For more great plugins, download my 50 Most Useful Plugins eBook.

Fast User Switching plugin allows you to switch between users and roles directly from the admin bar or the user list – switch from a list or search for users/roles by id, username, mail etc.

Keep Your WordPress Site Updated

Case Study: Updating WooCommerce

  • Test server: enable WP_DEBUG in wp-config.php file
  • Email messages: use an SMTP Plugin to make sure all email messages are sent
  • Enable test payment gateways and/or developer modes for Stripe, etc.
  • Check the theme compatibility and see if any theme files are outdated.
  • Test the functionality of WooCommerce extensions to see if they work properly.
  • Update WooCommerce Database if prompted.

Or, with Staging Pilot you can have a robot do all of this for you 🙂

Thank You!

Thank you to those who use my affiliate links. As you know I make a small commission when someone uses my link and I want to say thank you to the following people. For all my recommended resources, go to my Resources Page

Full Transcript

Business Transcription is provided by GMR Transcription.

On today's episode we are going to talk all about how to keep your WordPress site updated, and specifically go through a case study of how to make sure and what to test in WooCommerce to make sure that nothing in your store is broken. Right here on Your Website Engineer Podcast Episode 408.

Hello! And welcome to another episode of Your Website Engineer Podcast. My name is Dustin Hartzler. I'm excited to be here with you today because, again, we're talking all things on WordPress. That's what we do here each and every week, and it's been 408 weeks in a row that we've come together on a Wednesday or Thursday or Friday, whenever you get around to listening to this episode. And that's what we talk about, we talk about WordPress, and my goal is just to help you create that website that you can envision in your head, and so we talk about all types of things.

Today, we're gonna be talking about how to keep things updated, and I've got a little story behind that and why we're gonna be talking about that today. I do have a couple of pieces of announcements that I wanna share with you, and then a plugin to share.

The first announcement is you may have noticed if you are using the Apple Podcast App, or some of the other podcast apps that are out there, you now will see the album artwork, an updated version of the album artwork. It turns out, when I changed servers or when I did something, I ended up losing the file, it was no longer online, and so therefore it couldn't ever be displayed in one of these podcast players. So, it was one of those things that I said, oh, when I'm doing my site audit, when I’m cleaning out and optimizing my website, you know, when we talked about that last week, I'm like, okay, that's one of those big items that they don't like to do. Listen, like I don't know where this problem is and what could be causing the issue, and is it somewhere in my code. Well, here it's as easy as the file was no longer on the server, I added to the server and almost instantly it started working.

If that's been bugging you, that has now been fixed. And I'm still continuing to work on some of the other optimization things, and cleaning up, and moving some stuff around in YourWebsiteEngineer.com. I got real into it on Thursday or Friday last week, and then just kind of, I got overwhelmed with all the things that I had to do for work, so I didn't get anything more done. But I'll maybe give you an update next week of just how the cleaning in the optimization is going.

All right, let's go ahead and look at the announcements. There is a link by the calendar events or the events calendar by Modern Tribe, I've got it in the Show Notes. But it's basically, the title of post is called All Things Gutenberg, and it talks about the get to know the WordPress block editor. It talks about what is Gutenberg, a site prep checklist, and some of the other things that you can use, and how their plugins work with Gutenberg and whatnot, and some of the things along the way that's going and working underneath the hood. They've got a link to a bunch of articles there. And so, if you're just interested in to more, know more about what's happening in the Gutenberg space, then I definitely recommend checking out this article over on TheEventsCalendar.com, or you can find the link in the Show Notes for Episode 408.

Another thing that I wanna share with you today, it's not really an announcement, it's just one of those things that I stumbled upon. And this is, I'm sharing a couple of different articles and a couple of different things today, in today's episode, that have been in OmniFocus for a while. It's like, oh, this would be great to make a podcast out of, but they were never big enough to create a podcast.

But I'll keep this in the announcements part, and it's just called Fifty Gorgeous Color Schemes From Award-Winning Websites. And there's a link in the Show Notes, of course, but it basically goes through, and you can find these colorful and balanced or bright accent colors, and all of their – there's 50 different color schemes that somebody has put together and it has all five of the colors. And so, like the first one is, it's a dark orange, it's a blue, another color of orange, a purple, and a green. I'm like, oh, that would be perfect for Your Website Engineer. And each of those colors have the hexadecimal code on top of it, so you can see what those colors are and how those kind of blend and fit together.

And so, like I said, there's 50 of them there, there's greens, there's reds, there's blues, there's some really neat ones and some really cool ones. And so, if you are looking for a new color scheme or looking for a way to update some colors, or maybe refresh your palette on your website, I'd definitely take a look at this and see what some of those color combinations are that are out there. Definitely in the orange and blue is something that I am absolutely in love with. So, that is the news that I wanted to share with you today.

The other thing that I want to talk about is there is a plugin this week and it's called Fast User Switching. And this plugin is one, again, it's one of the free ones on the WordPress repository, and it's got more than 400 active installs. It's a little bit different than some of the other user switching, but this one's called Fast User Switching and allows you to switch between user roles directly from the admin bar. And so, before, you always had to go into the user's area to switch and there's been some different ways to do that, or you have to open up another browser. You know, maybe you were in your admin mode and you could see what the site looks like, but then you need to see what a customer sees, or a store owner, or whatever. So, this gives you the ability.

There's a little dropdown menu inside that black admin bar across the top of your website and you can see the recent users that you've used, or you can type in the Username or the ID and find those people really, really quick. So, if you are trying to impersonate a different user, this would be a very good plugin for you to use. It's called Fast User Switching, and it is found in the WordPress Repository.

All right, today, let's go ahead and talk through updating WooCommerce. And I see this a lot, and specifically I saw it today. And so, always what I'm looking for are topics for a show, it's always like something that's top of mind, something that I've just run into or I've just experienced throughout the day or the week, and that I wanna share. And today, it was one of those things that somebody came through live chat and was like, oh, well, why is this happening. And I said, well, on my side by default it's doing the opposite thing as to what you said. And I come to find out that they are using a version of WooCommerce that's version 2.7.11 that came out in December of 2016.

And you know how fast the internet moves and how fast things change, and how many features and update things can be added. But I didn't count how many versions there were between but it's been almost two years since WooCommerce has been updated. And I think this comes a lot and it happens a lot with just WooCommerce, it happens a lot with other plugins, but especially WooCommerce. Because that is one of those platforms that it cannot go down; it's providing income for the site owner, it's providing income and you're selling things, and you just don't want it to not work. So, it's always like, oh, I'll just update later, or I just won't update it until I have plenty of time to figure out what to do, and making sure that there's testing available.

So, what I wanted to cover today is just some of the things that we need to go through, thinking through, and this is going to be talking about WooCommerce itself, but I think it can be applicable to any plugin that's out there. But WooCommerce is probably one that takes a little bit more effort in testing just to make sure because you wanna make sure that this shipping works, and you wanna make sure payments work, and all of those different things.

So, let's go ahead and talk about going through the process of updating WooCommerce. Now, the first thing that you wanna do is just hit the Update button. Now, of course, that's, and all in joking, you never wanna update these big plugins, these very important plugins, on a live server, and you never want to even just update them without testing them. And so, one of the things is, and always the first recommendation, especially when I’m talking with customers in live chat or through tickets or just anyone at a WordCamp, you know, it's always create a backup of your site before you test them out, or before you update anything.

And this can sound like a tedious process, and I've done this for probably four or five or six years, and I've never run into an issue but I still do it just because in case something happens I can always roll back. It's a lot easier to roll back or know that something wrong has happened with a test site that nobody can see, then my live site, and now all of a sudden, I cannot make any more money. And so that's one of those things to think about.

There're tons of different ways to build a clone site. You can run it locally on your computer, you can use your web host. A lot of web hosts now these days have the ability to clone your site to a staging server, and it's usually a one-click installation, or one-click cloning process. There's a plugin called WP Staging that you can use if you don’t have that option inside your host, that you can go ahead and stage your website. And it's always, always wanna do that, that's one of the big recommendations. For any plugin that you wanna update, I always recommend having a strong backup and do this on a backup or a cloned version of your site.

Once you have that clone site set up, and you can always keep it available so it's always ready or you can spin up a new one right when you're ready to start this process, but then I wanna go in Starts, let's see, we wanna turn on WP_DEBUG. And so, these are some lines that you can add in your wp-config file, and it just makes sure that it is outputting any errors or any notices that may be happening onto the streams, so you can see them. You can also turn on WP Log or WP DB Log and you can make sure that that is continuing to pump any information or any errors that may happen. So, we can do that.

You can set up a way that you can specify these, like if it's live or if it's dead, it's a little bit more complicated to try to talk through and configure that. For the most part, though, on a staging site, if you've made a clone, just go into the wp-config file and then you can add these WP­_DEBUG constants to determine and lets the system output any notices or any warnings that may be happening.

So, first, we're tested the inner environment, we wanna make sure the environment's right. The next thing we need to test, is we need to make sure that emails are working properly. And if you're on a local site, if you're working on your desktop, that's gonna be a little more problematic to try to figure out if your email messages are actually being sent.

You could set up a SMTP server on your local site to make sure that it's using a different server, and maybe it's using gmail server to send those messages, just to make sure that there's nothing conflicting with those email messages being sent out from WooCommerce. Or, what I like to do a lot in especially just checking emails, if that's the big thing – you've tested everything else and the last thing you wanna test is email, then you can clone your website. I know that Pressable uses some sort of configuration that I don't need any extra customizations for it to send out email messages. And so, I would create a clone with Pressable from my current site for my live site, and I've just duplicated Update WooCommerce on that new cloned environment, and then see if email messages are sent out there. So, different ways.

You wanna make sure, though, that once you have submitted a test order that emails are going back out to both your admin and your customer. I saw an instance where this past week where somebody, the messages were coming to the admins but they weren’t going out to the customer. So, there was one piece of the puzzle that wasn't sending, which didn't make any sense. But you wanna test and make sure that all of those emails are going to the right place.

Another thing you wanna test is make sure that kind of the flow works. And I've kind of said these backwards. So, we've tested emails to make sure that email messages work, but the only way to get an email message is to send a payment. So, we wanna make sure that there is a payment gateway that's open and available. And when you're testing you can have it set up to just have like a test payment gateway, so that would be like a check or a bank transfer account. You could also do Stripe and PayPal, and you know all of those, to make sure that those are working as well.

But you wanna at least, I would always test the flow first with a test payment gateway just to make sure that all of those things are working properly. And you can set up the different configurations. Stripe has a test mode, it's called. And so, you can put in, you can say that you're in a test mode and then you can put in a fake credit card number. And then it would go through the process and making sure that the whole payment system is working properly. So, that's something that you wanna think about.

Another thing you wanna test is your theme. You wanna make sure that your theme, if it's built by a different developer there might be an update for it, so you can check to see if there's an update. But if not, there is a section in the admin screen, it's under WooCommerce and under Status. And then you can look at the, there's a section for templates and you can see if there's any template files that are using old versions of templates, or there's theme files that are using old versions of templates. If that's the case, then you have to go through and you have to test and make sure and update those theme files to make sure they are in compliant with the newest version of WooCommerce.

Now, I know that this happens sometimes with other plugins, but WooCommerce is the only one that I know that specifically on their Status page will point out, oh, this file needs update and this file needs update, and this file needs update. So, it could happen with other plugins, but I know WooCommerce does a really great job of pointing those out in their Status screen.

The other thing that we wanna test is plugins. We wanna make sure that any other plugins, any other WooCommerce plugins or anything else is working properly together. So, again, it's just working through like adding something to the cart and pretending to purchase it. And if you have a subscription site, to go through that process of signing up for a subscription and maybe change the subscription link from the yearly subscription or monthly subscription, turn it down to one day and see what that looks like. Does the next day, does it automatically renew, and whatnot? So, you can test all of these things in a controlled environment to make sure that an update is not gonna break functionality on your website

So, like I said, we've already tested payments, we've tested order details. We can go in and we can try to put a new credit card into Stripe, we can see if our license auto-renews. We can see if people can download plugins. Or they can download their details; maybe that you've created a digital product where they can download, and they can make sure that that can still be downloaded. You wanna make sure that testing coupons, cross-steps, if you have any cross sales or cross promotions, make sure that those are working. Make sure the coupons, that you can manage them. You wanna do a test purchase and then a refund and make sure that all of that works. And kind of work through that whole process.

It's a bunch of steps, but keeping a WooCommerce site updated, a big WooCommerce website is a lot of work. It's not, even though that the software is really, really easy to use and it makes it available for all people to create an ecommerce site, it doesn't mean that it's easy to follow the steps the correct way to make sure that you're working through, strategically going through the steps of the process to make sure that you know exactly what's going on, on your site.

So, that's kind of some steps that I just wanted to share. I know that it's very specific to WooCommerce, it's specific to WooCommerce because I see it every day, I see so many sites that are outdated. And one of the best recommendations is to troubleshoot, is to make sure you're on the latest version, but you don't wanna necessarily be on the latest version without testing it. And so, it's kind of this you're at this Catch-22 that you say you wanna update it, but you're like you don't wanna update it on live site, and then it just takes extra long to do these things.

So, all in all, I am all the time on the latest and greatest offer. I know that you may run into bugs and you may run into issues, but for the most part those big bugs, if they're happening, if they're happening in WooCommerce and you update on day two or day one when this offer comes out, there's gonna be thousands if not hundreds of thousands of people that are having an issue. And you can quickly roll back if you see that issue and you've done it on a test site, or you see that it's been noted and get help somewhere, and then you know not to roll out the live version of your site until you're ready.

I know that I always like being on the cutting edge. I hate that little notification that says, oh, you have three updates due. So, I'm all the time updating things and making sure that they are completely updated and ready to go.

So, that's kind of some steps to think about when you're updating plugins. Always clone your site, make sure that once your site is cloned that you can work through the process of updating one plugin at a time, testing it with other things. I don't recommend updating all your plugins in one fell swoop because you'll never know which one caused the issue. Usually, the one that's the most dependent or what your site's most dependent on, let's do that one first. Like in a case of a store, most likely it's gonna be, WooCommerce is gonna be the one that needs to be updated. If you've got WooCommerce extensions make sure that those are updated after the main WooCommerce has been updated as well. So, that's some things to think about.

Now, I have another tool that I wanted to share. And this is one that kind of filled in somewhere, I couldn't fit it in a full-length show, but I wanted to talk about it a little bit. And it is called, a service called StagingPilot. And this is one of those things that if you are afraid to click the update button on WordPress, that this has a robot that will automatically update and fully test your site automatically. And you never have to worry about updates again. So, this is like the complete opposite of what I just talked about, of going in and methodically checking every piece of the puzzle, making sure that everything works on a staging site, everything looks the same, and then moving on and updating your live site. This is completely different.

You're somebody that knows it's important to keep you site updated, but you already have too much to do, maybe you're running your business and you just wanna have it done for you. Updating and testing your site is no fun, believe me it's not a lot of fun to do all this. Unless, of course, you're a robot.

So, what if you could spend five minutes right now, this is what's right on the Sales page or the main site, what if you can spend five minutes now and have a complete confidence that your site will always be updated, always look the same, and always work the same? Now, how does that work? So, basically, what it does is there's a robot that will do this, and it visually inspects your site to make sure it's pixel perfect after each update. A robot that uses the knowledge gained from thousands of updates on a variety of sites. This robot, then, performs all these updates in visuals, tests your site in a safe isolated copy of your site. So, your real site is only updated after confirming that nothing will break. So, it's basically doing the cloning for you

It detects problematic updates before they affect your live site, you'll never be caught by surprise. If testing reveals a potential problem you'll be notified and given a chance to review the issue. By glancing at the visual tests you'll be able to quickly see which pages would break. From there you can manually override or approve the update or have the issue fixed.

They have a section on here about WooCommerce and it automatically tests critical functionality to make sure that your site is always ready for your business. You should be able to host your files where ever you like, it works on your site. And even if you only have ftp access to your server, if you have a bunch of sites and it's hosted all over the place, it will work with that as well.

Like I said, this is a premium service and they have a cool little calculator right on their page at StagingPilot.com. And it talks about how much does it cost to, what's the maintenance cost based on your salary or how much your billable hourly rate is, and then how much time you spend per site. And it calculates how much and how many dollars it costs per site without StagingPilot, and then it also tells you how much it costs with StagingPilot. So, I did a – charged $200.00 per hour, and I said I spend 45 minutes creating a test site and a clone site; it's gonna cost $150.00 per site to do this maintenance and tedious work; but with StagingPilot it's only $59.00 per site. And you know that everything's updated and everything will still work, and you've got more important work to do.

So, you can actually give this a try for 14 free days. This is not something that I've tried, but it's definitely something that looks really cool and it would be interesting to just give it a try and see what happens. And for 14 days it'd definitely be worth it, and there is a ton of FAQs if you're interested in that. And so, I wanted to share that just mainly because I came across that across the web somewhere. I felt this would be something that'd be very interesting to just talk about on the show and just share in case somebody is looking for that. And so that's why I wanted to talk about StagingPilot today.

So, we talked about updating it the manual way, so if you wanted to be very tedious and go through all the steps and the processes, you can do it that way. Or the other way is to use StagingPilot and spend $59.00 per year, and go through the process of keeping your website always updated and always ready to go. Have a robot do it all for you and you can spend more time doing billing or building more sites, or doing whatever else that you would rather be doing than checking updates to make sure your sites won't break after an update.

So, that's what I wanted to share with you today. StagingPilot, and steps to keep a WooCommerce site updated, or the steps to update a WooCommerce site.

Next week I'll be at the Automatic Grand Meetup, and so I'll be coming to you from there. I'll probably record before I leave, but if not, I might give you an update on all the work that I've been doing on YourWebsiteEngineer.com. We'll see what the show entails in a couple of days when I get it recorded.

So, until then, take care, and I'll talk to you soon.

Leave a Reply