Is There a Browser Problem?
Where does the problem lie? Is the problem due to the browser, you check that to see whether or not it exists in a variety of browsers and those kinds of errors that we were seeing that clearly are not browser related errors, that’s a server generated error.
Is there a Problem due to a Plugin?
Is the problem due to a plugin? Well, you deactivate all your plugins and if the problem goes away then it’s a plugin problem. If it doesn’t go away then you want to check to see if there are any caching plugins that add files. If there are you want to delete those files and if there aren’t then the problem isn’t with a plugin, go ahead and leave your plugins deactivated, play around with the theme.
Is there a Problem with the Theme?
When you are in this case, this is very specifically a Thesis related issue so there was no real value in switching to Twenty Thirteen to see what happened. Often that’s what you would do, is you would switch to the default WordPress theme and see how it behaves. And if it still doesn’t work then when you have no plugins installed and with the default WordPress theme then you know that the problem exists with WordPress or with the server.
Is there a Problem with WordPress or the Server?
Now, you may want to stop and ask your hosting provider to help resolve the server issue but otherwise, if it’s with WordPress you’re going to try and figure the WordPress problem. We talked about fixing the plugin problems by essentially turning your plugins back on gradually until the problem returns. At which point you have found the plugin that is causing the problem.
At that point do an update it if it’s available and test it again. If there’s no update available then you need to find an alternate to that plugin. That’s your only choice. And this is almost always where problem solving act exists. Almost always deactivating plugins makes the problem go away and if there’s some kind of a plugin problem.
Steps We Took Here
If that’s not the case though then you’re on to what we did this morning which was fixing the theme problems and in particular in this case, we’re fixing the Thesis problem. So we updated Thesis and the problem didn’t go away. We activated Classic Responsive and the problem did go away.
We activated the skin and then we exported our settings and then what I did here which is not in my outline was I restored the skin back to early settings because I suspected that the problem could have been in database settings that were being stored and were for some reason or another not performing correctly. So what we did was we restored to an earlier restore point and all of a sudden it worked except it had those errors and errors had to do with missing images. We checked to see if the images were missing and they were in fact, missing.
So we deleted those but the errors still persisted. Then we deleted the box which was responsible for the errors and the problem went away. We created a brand new box for it and the problem still went away. We added images that did exist to that box the problem and the problem still stayed away so that’s where our problem was.
It was a problem somewhere in the database settings for that one header box or that single column header box and by deleting that box from the skin and deleting those settings from the database and that no longer caused the problem.
Replacing the Core of Thesis Files
We never got around to what happens next, what would you do next. And what you would do next is you would manually replace the core of Thesis files just to see if there’s a problem in the Thesis files that maybe is causing the problem.
In this case, that would’ve been the case and then if that didn’t solve it then what we were going to do was deactivate Thesis and delete it entirely, delete the wp-content/themes/thesis/ folder and then rename wp-content/thesis so that there is essentially no reference to Thesis left in the files.
Then we were going to go to the database and delete all Thesis options and delete all BYOB options so that there were no Thesis data in the database and there’s no associated BYOB data in the database.
If you’ve never installed the BYOB box or skin or package then you never have to worry about it but otherwise you want to get rid of all those things too and then we would have downloaded a new copy of Thesis 2. And we would have downloaded a new copy of the skin and we would have reinstalled them to see whether or not it worked. If it did work then we would have imported the old skin settings that we’ve exported and test it again.
Fixing the Same Problem with Genesis
If you’re going to fix a problem in Genesis it’s very much the same thing. Genesis has few moving parts so it’s a little easier but you would update Genesis first. And if the problem goes away great and if it doesn’t go away then you would deactivate the child theme and just activate Genesis itself. And if the problem goes away then the problem is with the child theme and if the problem doesn’t go away then the problem is likely with Genesis so then you go in and delete Genesis.
You would delete the Genesis options from the database so there’s no possibility of corrupted options having an effect on it. You’d download a clean copy of Genesis and you would install that clean copy of Genesis and then test.
If at that point you still have a problem then you have to go on to step 4 which is fixing WordPress problems and if you’re going to fix WordPress problems. This is what I expected us to have to do and in fact, I expected us to have to go all the way through the process of nuking WordPress.
I just felt something like this problem that was not going to get solved until we got to the very end but I was going to go through each of this processes. They’re all sort of incremental so step 4 is try to fix the WordPress. First what we do is update WordPress to the latest version, if the problem went away great, next thing we would do is reinstall the latest version.
WordPress does have a nice handy dandy little thing here. If you go to the dashboard, actually go to Updates. There’s this little button right here, “You have the latest version of WordPress.”, “Re-install Now”. So you could just reinstall it again to refresh those pages or to replace those files to see if that solved the problem and often that really solves the problem.
Then if that’s not going to solve the problem then what you do is you go into the FileZilla or something like that and you are going to replace all of the WordPress core files. What that means is essentially, you delete all of the WordPress root files, you delete wp-admin and you delete wp-includes and then you download a clean copy of WordPress in wordpress.org.
You unzip that and you put the root files back into the root and a clean copy of wp-admin and wp-includes where they belong and try it again because now you have brand new clean files and that sometimes fixed something that reinstalling and updating doesn’t fix. Then you get down to the nuking.
The way you nuke WordPress is first you gather all of your existing data. So in that case, that means that you export your content so you use the WordPress export function to export them then using phpMyAdmin. You export the database so that you have all of the database data.
I usually export it twice just to make sure that I have two copies of that data and then I zip up all the files so I’m not deleting anything. I just add a zipped copy of everything and then I take wp-content and I rename it to wp-content-old and then I rename wp-config to wp-config-old and then I delete everything else in the root.
So all of the root files, wp-admin, wp-includes, I delete everything, I go in to the database and I drop all of the database tables so that the database is now entirely empty and then I manually reinstall WordPress again using a file that we download from wordpress.org. Then upload to the site and manually install it using the existing empty database and at which point I just have a blank clean install and then I go back in and rename the new wp-content folder to wp-content-new.
I refresh the wp-content-old folder and make it wp-content and I test it again just to make sure that it still works with the old wp-content stuff in place then I go back to the database and I drop the new database tables out of the old database. I import the old database tables into the database. So now we have all brand new files except for wp-content and we know that the brand new files actually all will run a WordPress site without error.
Replacing the Old Data with the New Data
So now what we do is replace all of the existing data or the new data with our old data but we know there’s no problem in the files because it’s all been working just fine. So now what we do is replace the data and if the data works then we’re done and that’s the typical nuke solution to a site.
The final nuke solution is if when we import our old database into it and the site no longer works then we have an error in our database that is causing the problem and so at that point what we want to do is just resort to our exported data as opposed to our exported database.
What we do then is we go back to that clean install. We drop all the database data, we install again using that database and then we use the WordPress import feature to import the posts and pages and menus and categories and that stuff from that exported data.
At which point we are essentially starting all over again except that we have all of the content that we’ve created. Thesis would have lost all of its data and the BYOB stuff would have lost all of its data so that’ll be all like starting from scratch but at least all of our content was there.
And that is the process that I expected us to actually have to go through today in order to finally solve this problem. I didn’t really expect it to be a database error associated with a specific box.
Brent was wondering whether or not it’s a problem versus where the media files are named with an uppercase letter versus the lowercase letter so lowercase gif versus uppercase GIF. I don’t think so, I don’t think that’s going to be the source of a problem.
Now, what’s the real file name? The real file name is XEED-header-1008px and lowercase gif. That’s the real file name so I don’t think is a potential source of the problem. The error message that we were getting was saying that the name of the image, that png didn’t exist and obviously it didn’t exist, it wasn’t a png file, it was a gif file so that was probably one of the sources of the original problem.
So an answer to your question Brent, the problem in event being the 1 Column Header box, the data associated with the 1 Column Header box that we were able to get rid of when we deleted the existing 1 Column Header box and replace it with a new one.