 Hey there everybody. Hello. Hello. First like stream or at least my stream. So I'm excited for all this sort of stuff. So yeah, we're going to jump in to PHP troubleshooting on the good old PHP 8 changes we made a couple weeks ago to keep the servers online. So I'm sure on the most recent software PHP version. And I'm sure a lot of you have been troubleshooting some broken plugins, themes, sites in general after this. So I kind of wanted to do a stream about this because of that. And I know on reclaims and we've been troubleshooting a whole lot about this. So just some good tips and tricks on that side. We're going to focus on WordPress in particular for this one. But this does but the error logging and that sort of thing can also apply to like omeka or marker two and other things like that. So yes. First I did want to touch on some timelines within PHP, which I think is really helpful to kind of put in perspective as to why we made these changes for PHP to PHP 8. And the PHP developers like to release a current version of PHP for two years after the betas and all of that good stuff. So within that initial release, a PHP version is supported for up to two years for active active releases and then another year after for security releases. So anything major like any vulnerabilities or anything like that are applied as patches to the versions. This means that PHP 7.4 is actually out of security updates at the end of the month, which means it's reached its end of life. It's no longer getting any additional updates, all that good stuff. And surprisingly enough, PHP 8 is reaching the end of its active support as well at the end of June at the end of November. So it's kind of interesting to see how long PHP 8 has been in active release for for two years really. And we're halfway through PHP 8.1, which is wild to me to think about. And from what I was reading to PHP 8.1 is a bigger update than our shift to 8.2. In terms of breaking changes, I'm guessing. Yes. Yeah. So it's like how do we switch from 5.6 to 7.1 and 7.2 back like two, three years ago? I'm expecting it's going to be like that, like that big of a change. So yeah, and it's I think important to note to the difference between the active support and that security updates, right? So 7.4 is security updates are almost up. It is time to move on, right? Like it is going to be pretty soon unsafe, right? From a security standpoint to be running sites that are using that. When a vulnerability gets found, which eventually one will be, it will not be patched, right? Right. The active support does include so like where 8 is right now and is about to be done with active support includes security, but it also includes like bug fixes and things like that. And at a certain point, they kind of freeze it and go like, look, any further development, we're going to move on to the next version. And after two years of that, it's usually fine, right? So yeah, what we're most concerned about is that security timeline. So you still have a good, a good year left on 8.0. And 8.1 is on our servers right now. So you can try out 8.1 if you really want to. But you will probably find that certain plugins and things aren't quite supporting it yet. So it's one of those things where you can try it, but I wouldn't be stressed out if you have to be on, if you're on 8, that's where most people are at right now, basically. And I think a lot of people are moving on from 7.4 still, which is why we're doing this stream. Yeah, exactly. And it's also important to note too that we still have version 7.2 through 8.1 on our servers. We don't recommend you use 7.2 or 7.3 right now. Those have definitely been past end of life support. And with 7.4 reaching that, we typically keep that version on our servers for like a year or so after end of life support finishes. So it's a priority to move to PHP 8, but also there's time to work on it if needed. So that's something that I think we forget a lot too. There's a big rush to move up versions, but there's also time to troubleshoot if needed. So it's pretty cool. And you can read more about all of this stuff on the php.net website, which is really helpful for looking through any bugs or any news that PHP is doing. The other thing I think is probably worth pointing out too is that the reason why our default, the server default is 8 right now, is to catch these things while you still have a lot of time to move on from 7.4. You only have security updates for a little while. So now's the time to move, but it will still be on the server. So if it takes a little longer than that, you're not completely out of luck. We had people say, like, why make that switch now? It's like, well, you either make it now and find out what's broken now or you find out what's broken a year from now and you only have literal days to fix it. So that's no good, obviously. Yeah, absolutely. Cool. Well, on to what the typical error looks like. Not every WordPress site reports errors in the same way. It could be you just get a generic critical errors on your website. You get an HTTP 500 error. And sometimes the errors are printed on the page itself, which is the best option. It's super helpful to see the errors on the screen. So it's important to know what the error pages look like and where to go. And WordPress prints the errors into the error log on the file manager in the file system of the account. And you can also adjust the WP config to adjust the how the errors are displayed on the page so that you can have the printing error, like this last screenshot down at the bottom and that sort of thing. So it is helpful on that side from there. Within the error log or within the error message, you'll see a whole bunch of file paths as well. And that points to where the specific error is coming from, whether it be a plugin or a theme or even some of the core files within WordPress. Sometimes there's like a second line of some code that's duplicated somewhere in the WP config file that's causing issues. So it's important to read through and kind of identify that side of the error. Typically it will print the full path so you can see, you probably can't see my marker, but it goes home slash meridith slash reclaim test dot meridith fear dot com slash WP content, which means that there's either a plugin or a theme going wrong with this. And if it's anywhere else, it will just like really drill in and tell you on that side from there. And when you're troubleshooting, don't panic. You can take time to get your head in the right space and breathe before you start troubleshooting. My first recommendation is to initially lower the PHP version back down to seven four to determine that it is indeed the PHP version change that caused the issue. There have been multiple WordPress updates as well in the same timeframe. So I think from 6.0 to 6.0.1 and then to 6.1 from the beginning of October. So it could also be a backup issue or a great issue. But it's always helpful to know that if you lower the PHP version, that tells you, hey, this is specifically that change. And you can also disable the plugin from the dashboard or the file manager if needed, which is also really helpful if you can see that the file path links directly to the specific plugin. And then once you get access to the dashboard, you can then see if there's an update or if the plugin itself is just really out of date, hasn't been updated since 2015, and it is no longer compatible, namely like social media plugins that would connect like your Facebook or Instagram to your website back in the day. Those have kind of fallen off of the WordPress repository for plugins. So they're no longer getting active updates or they've been abandoned projects and all of that good stuff. Sliders. Yes. Yeah, that's definitely another one. I think with like Gutenberg and stuff, it has kind of moved a lot of people's need for that and just like site builders in general, like people. Yeah, although one site builder plugin has been causing issues as a repeated offender on that side. And so when you lower your PHP version, you can do that within cPanel. Also within the HD access, you can set a rule to designate the specific version of what you'd like to lower. And that will bring the site back online from there. And continuing with the plugins, just make sure you can check is there an update needed for the plugin to make it compatible, how old the plugin was. So if anything is like I said, like 2015 and older, it's definitely not something that's worth keeping around and could also be a vulnerability in that sense. So it's a good time to kind of evaluate and say, hey, like, is this plugin actually needed? Do you need this for any mission critical side to the site or anything like that? And then we've seen some social media widgets and embeds, slider plugins and also a couple page builder plugins that have been the culprit for a lot of these. Also themes, which would cause the site to go down as well. And you can change the theme back to a default WordPress theme within the dashboard or within the database on the WP options table. So that's really helpful. In particular, like I think one theme, the Kale theme is one that is not compatible with PHP 8 right now. So knowing that you can go into the database table and change that is really helpful to bring everything back up. And you want to change the template and the style sheet rows to any like 2022, 2020, anything like that. We'll bring the site back online. Right now 2023 is the new WordPress default theme. So when you install a fresh copy of WordPress 2023 will be installed automatically. So you can do that from there. And if all else fails, you can replace core files through the file manager or through the WPC. Yeah, WPC live. That's that's great. If no ones use that, I used to do it the the couple times I had to do it. I used to do it the file manager way. And I mean, it's not the end of the world or anything, but the WPC li makes it really fast and easy. Absolutely. And while you're doing this, the WPC li is super helpful because it will exclude the content folder, WPC content folder. So that's where all of the plugins, themes, media are stored on the WordPress site. So you want to make sure to exclude that folder from the the replace and all of that good stuff. So we do have that documented there. And just some initial final or final thoughts on that side before we kind of go into like a live troubleshoot. Don't obviously don't panic. We are here for you if you need any help while you've been troubleshooting. So definitely let us know. Try your best to work with the plugin or keep or keep the plugin disabled unless it's actually mission critical to the website, because we do want to make sure you stay on PHP 8 as much as possible. A lot of times the plugin developers are actually having their they have an active update in the works to be compatible. So it might just be a little bit of time before you can upgrade back to PHP 8. And that's that's why we keep PHP 7 for on the server for the time that we do just so then that way it's easy enough to to switch back and forth if needed. And then if something just goes wrong during the process, we have backups to be able to restore. So there's no lost content or anything like that. We did make this change for a lot of schools, particularly Domain of One Zone throughout October, I believe. And then at the end of October we made the switch for our shared hosting users. So hopefully at this point everything's kind of filtered out, but it is helpful to have on that side. And then I just have some further readings on the WordPress sections and Omeka and Domain of One Zone for all the in-depth processes for like walkthroughs and all of that. And I will provide the slides in the chat for Discord. And that way you all have the links as well. So cool. Let me use change my screen sharing so I can bring up the page. Yeah, I wanted to while you do that, there's I think Shannon is in the chat kind of asking some questions and some advice too, which is good. So for the sake of getting this in the recording, I'm just going to kind of sum up some of these things. Shannon mentioned that so far most of the troubleshooting she's done has not completely destroyed a site in terms of usually it's those smaller, older plugins that are poorly maintained. Of course everything's reversible. That not destroyed in is not in sense that it's completely broken, but just saying like if you have to disable a plugin, often it's not a huge deal. There is a particular page builder plugin that I've run into a couple times that I think I don't want to name names because maybe they'll update soon, but it's one of the less popular ones I would say. And she also mentioned that she often has and teaches her students to disable themes by renaming them in the file manager, which is the other way to do it. You can either do it in the database or the file manager. I like to do it in the file manager a lot because it's kind of easy to do, but it can be tricky because you do have to know what theme is enabled in order to do it that way. So sometimes it can be a little bit faster to do it in the database. It sort of depends fastest sort of relative. And that doesn't work for multi-site. You wouldn't really want to do that on multi-site because you're working with an individual site. So then it's better to do it in the database there too. So I put in the chat a link to our article on how to do it in the database, but your screenshot kind of summed it up. It's going to PHP MyAdmin, find the I think style sheet and template and you can change the name there. Yeah, absolutely. And I like changing it in either option, mostly the database side because it doesn't remove any of the stored settings or anything like that that you might need when you're updating the plugin and all of that kind of stuff. So we've got all of that there. So everybody said how to brand into in the background just got home for work. So okay. So I've got a broken site on my domain from a this is a theme in particular that has been known to cause issues with PHP 8. It does still work on PHP 7. So that's good. This is kind of where I'm talking about if like the theme or plugin is causing issues on that side or the theme itself is causing issues because this is really mission critical to the site and the appearance of like how it looks and everything like that. So if it's broken, you don't really want to like remove all the settings on that side. So the quick fix that I was saying before is to change the PHP version directly in cPanel back a version. So in this case PHP 7.4. And then once that goes and you refresh the page, the site will come back online. And you can see the theme is loading just fine on that side. So I'll leave this on 7.4 for right now. And then I'm going to break the site again. And then see how that goes. I'm changing the PHP version again back up to eight. Oh, no, that's a theme. So I'm going to change it back to I would say there should be if that's my plugin deal, there should be two of them have to be enabled. Oh, both have to be able. Okay. This I'll also go through like how you can locate the specific side because I couldn't highlight it on the slide. But typically it's like one of the first lines of the error. And it just once you see the whole like all the slashes and everything you'll know, that's where the side of it is. I'll change this back. And then I'll activate both of the plugins. Interesting. I'm only seeing the one. Yeah, I only have the one. Yeah, let me get that fixed really quick. Oh, um, yeah, my demo plugins, you may have to do the other file manager, because it's like one zip with two plugins. So I'm not 100% sure if it'll work that way or not. But okay, let me, um, yeah, see, I can see right there, WP breaker two. Yeah. Yeah, let me I can take care of that. Well, it's the C to it's it's been a little bit since I've used my these plugins. So it's possible that they're no longer broken. Geez it format. So weird. Okay, hold on. I can let I can upload the other zip really quick. Um, yeah, there we go. Oh no, they both installed. Oh, okay, there we go. Oh man, that's crazy. So it breaks but in a different way now. Oh man. Okay. Oh, that's funny. Okay, so sometimes I think WordPress must have be handling this error better than it used to. So it got you. Okay. Um, so let me change the theme and see if I can adjust the version to see if that works. Um, and then we can go from there. This is the beauty of like live troubleshooting. We can try different, different options. I also tried to use the rollback plugin to bring everything back online. Like I switched down to version two. Sure. I'm going to see if that would cause an issue or break the site or anything like that. But that would also help. So, um, yeah, I'm still getting the, um, I think the element or the other plugin you were working with is elementary. So maybe find deactivate. Yeah, that's true. I forgot about that. It's a old, these plugins are two pretty popular plugins, but it's very specific versions of them. Um, so, but again, it's very possible that WordPress is handling whatever error they were throwing before. Um, yeah, unfortunately, it's not going to work anymore. It's a demo I did a couple of months ago and it would, it would break a site instantly. Um, but, um, luckily WordPress moves on in usually positive ways. Yeah, absolutely. Um, so I will have to at some point make a more broken plugin. Um, but yeah, yeah, cool. But you know, if it did break the site, right, like one of the, the ideas to show here is that you can simply rename the folder if a plugin is activated and it will be turned off. Um, you can even rename what I usually do is rename the entire plugins folder. Um, so you turn all plugins off and go back to the site and you're golden and then you can individually turn plugins back on once you have access to the dashboard again. Yeah, absolutely. Um, and then to look and see when the plugin was last updated, it, you can look at the last modified dates typically. Um, if you've been working in the WordPress dashboard to install so you can see like the subscribe to comments plugin hasn't been updated since 2015. Um, but it still works. It's still good to go on the outside and you can see the changes that I made, um, installing the rollback plugin this morning and then the other like breaker plugins this afternoon. So that's also really helpful to kind of get a sense of maybe it's an abandoned project or anything like that. That would cause the site to go offline from there. Awesome. Yeah. I'll throw it out there too. Like, does it, if anybody watching has any questions, let us know. We can go through that. Yeah, absolutely. Um, if anyone has any questions, throw them in the chat on the stream or in discord is fine too. Um, wherever you prefer. Um, but, um, yeah, so one of, one of the other things that I think is probably, um, not WordPress related, but certainly PHP related that may be worth mentioning too is the different ways that different, um, applications report errors. I think we get very used to, at least I do that WordPress is pretty good about when a site is broken writing the error to the screen or to the page or, um, putting in the error log, um, which is that file in the file manager, um, or both. And, um, one of the main things that I, um, and I can pull this up too that I honestly, every time I work with Omega, I kind of forget is that Omega doesn't really work that way out of the box. You have to actually enable Omega, um, error logging. Um, and that is a question we get very often. So let me, um, just pull that up really quick. Okay. So, um, so, uh, if you're working with Omega and, um, you are trying to determine what is the matter with a site, like maybe you, the site won't load on PHP eight, you roll it back to seven, four, and it's working okay, but you need to figure out what exactly is going on. Um, you will need to go to the file manager. Um, and you can go to where your Omega install is. Uh, you'll want to, um, show hidden files so that you can actually look at the HT access file. So in the HT access file for all Omega installs, and I'll blow this up a little bit. Um, there is a line that says set M application environment development. You have to actually remove the little pound symbol here to come to, because the line has commented out as it is. Um, if you remove that, um, it will now print any errors it has right to the page. Now the problem is it will always do that, even if it's not like a critical like failure. Um, so you probably want to enable this do your troubleshooting and then put that pound symbol back to comment it out when you're done, because there are a lot of warnings and things that are not going to necessarily impact your site that you wouldn't want right at the top of every single page on your Omega site. So, um, just wanted to point that out there. It's a real common thing that kind of always true every time I'm looking at an Omega. Oh, yes, I have to enable that. And as far as I know, Omega does not have really almost never writes to error underscore log the way WordPress does. I think there are probably exceptions for that because it sort of depends on where the error comes from, I think. But in general, you're not going to have that file there to look at past errors, which is kind of a bummer. But, um, yeah, it's it's a workaround that works pretty well, not even a workaround. It's just something you have to keep in mind. Yeah, absolutely. And Omega S2, I think that guide shows both processes. You have to, like, change your word in the HCI access at the top line for the production to development side of things as well. And then you can go in and upgrade the plugins manually. You have to upload the zip and extract the files. And then you can go into the dashboard to update from there. So that's another common issue we see is that because Omega doesn't have, like, the repository that WordPress does where you can install directly in the dashboard, a lot of times plugins and themes are really out of date. And they go offline when the plugin when the PHP version changes. So yeah, it's so easy to get used to the WordPress way of things where it will be plugin updates for you. In fact, you don't even have to go in there and do them. Install Tron will do them if you have it set by default. So yeah, that's a big one, too, is you have to go check and manually do those Omega module updates and themes. Yep. Well, I'm not seeing any other questions or anything else you wanted to go through. I'm all set on my end, too. But if you guys are watching this in the future, definitely let us know if you do have anything come up. And I'd love to continue the conversation if you want. For sure. Yeah, throw questions in Discord or in our community forums, community.reclaimhosting.com. And we'd be happy to talk about it there. And we really appreciate when people can contribute, even questions to those spaces, right? Just because usually people have the same question as you. If you're, don't feel afraid to ask them is what I'm saying. It's always good to see those out in the open so that other people can learn from them, too. So thanks everyone who watched. Thanks everyone who tuned in. And we'll see you next time. Yeah.