From time to time WordPress will go squiffy on you. The key thing to remember is: DON’T PANIC!
The really good news is that WordPress has been around for over 10 years and so if you’re having a problem with something you can bet that someone else in the last 10+ years has had the same problem and an solution has been found for it. 🙂
What are the common types of problems people encounter in WordPress?
[su_accordion]
[su_spoiler title=”Updating The WordPress Core” style=”fancy”]
Before we really begin I’d just like to talk about updating the WordPress Core.
WordPress Core files Update Manually (you download the new files from WordPress.org and upload them yourself), by the One Click Button in the Admin Dashboard or Automatically if you’ve set that to be the case.
Each of these has it’s own positive and negative aspects.
Manual Updates give you full control over what gets done, where and when but it’s also a slow process and not for those who aren’t confident using ftp clients like Filezilla (Mac & PC) and Cyberduck (Mac).
One Click Button is great for most users, it does exactly what it says on the button. However, before you click that button (I always thought it should be gig and red…) there are somethings you need to do that will minimise the chances of running into any of the problems examined below.
OK, now you’re ready to click that button! 😀
Hopefully WordPress> has now upgraded itself to the newest, most secure version. Here’s what to do next: reactivate your plugins ONE BY ONE. At the same time, in your web browser of choice, delete the cache and refresh the page to see if things go wrong.
Do this for every single plugin you’re using. Hopefully everything is OK and you won’t encounter any issues. However, new versions of WordPress often come out before plugin developers have a chance to update their work to be compatible. If you get a problem, read on… [/su_spoiler]
[su_spoiler title=”Plugin Management” style=”fancy”]
Plugins are great; they take what is an already powerful, feature rich platform and make it do all sorts of awesome things. However, you as a site owner have to stay on top of your plugins.
What do I mean by this? Well, there are literally thousands of plugins available and most of them are very, very good. However, there are plugins out there that are still available (I know, I wish they weren’t too…) that are out of date or what’s known as deprecated.
These plugins can become obsolete very easily. Let’s say a developer creates a plugin to do something pretty sweet. This developer maintains their plugin keeping it up to date with the current WordPress version for a year or so, but then they either get bored of doing all that work, get sick of doing it all for free, have a change in personal circumstances that means they no longer have the time to manage it and before you know it that plugin goes for six months, a year, two years or more without being updated. But it’s still available.
Now, WordPress gives you plenty of warnings about the plugin you’re about install. When you install from your dashboard you can, and should, click on the Details option BEFORE clicking install. This will open an overlay window that will tell you quite clearly if the plugin you’re about to install is compatible with the version of WordPress you’re running. It will say “This plugin has not been tested with this version of WordPress“. That’s WordPress’s way of saying, “If you click install, on your own head be it…”
When you visit a plugin’s page in the WordPress plugins repository it gives you a little table on the right hand side detailing the plugin’s credentials. This should be your guide when selecting your plugins. Check out the pic
below:
This is from the still popular Lightbox Gallery plugin page. Here you can see that it’s only compatible UP TO WordPress 3.5.2. WordPress is currently on version 4.0 so this plugin is already quite behind the development cycle of WordPress.
Below that is the really important information and the most troubling bit about this plugin: Last Updated. The date is January 18, 2013. This plugin hasn’t been touched in nearly 2 whole years and yet it’s still both available and being downloaded/used. As you can see in the picture there are nearly 3/4 of a million downloads of this plugin! That means there’s an awful lot of sites out there running this code and it’s nearly 2 years out of date.
This image shows what you get when a plugin is reeeeeeeealllllly old.(Incidentally, I was assisting a WordPresser this week on the support forum who had this plugin installed…)
This plugin, believe it or not, is still being used on live sites in 2014 and hasn’t been updated since 2009! 2009 and people are still using it and wondering why their sites break.
It’s on you as a site owner/operator to stay on top of these things; if it’s not compatible UP TO the latest version of WordPress (which you should be running!) then you install it at your own risk. If it is compatible but hasn’t been updated in months, again, you use it at your own risk.
Although, using it could also be at the risk of your visitors or customers as some of these out of date plugins can be used by hackers as a cheap and easy way to get into your site… You have been warned!
If you’ve discovered a plugin that’s old, not compatible or causing a problem with your site the first instinct is probably to just deactivate it and leave it alone. Sadly, this is not enough.
WordPress plugins hook directly in the WordPress Core to make their magic happen and they make this connection to the Core the moment you activate them for the first time. This also includes loading and calling on all the external resources it needs to operate like .css files and .js files and even fonts.
These dependencies get loaded every time the site loads, even if the plugin is deactivated; this makes sense from a logic perspective as you’d want these things in place to work as soon as the plugin goes live rather than having to load them fresh each time.
The downside to this is that if you leave these dodgy plugins on your site then they can still directly impact the performance of other plugins and themes as they force WordPress to call their javascript and outdated jquery libraries while newer plugins call the right versions to run.
Well, the best thing to do is to delete them from your site.
If they’re causing the White Screen Of Death or other problems you may need to do this via the server cPanel or ftp if you can’t get access to your site’s dashboard.
Sadly some of you will be quite attached to some of these troublesome plugins and be loathe to delete them but you must be strong; take them out back and shoot them, it’s the humane thing to do. But before you do, search the WordPress plugin repository for a replacement that does as close to exactly what the dodgy plugin did for you and use that instead.
[/su_spoiler]
[su_spoiler title=”Themes And Child Themes” style=”fancy”]
WordPress has a magical feature called Child Themes. This is great for you as it means you can find a theme you like the look of and then you can customise the heck out of it without damaging the parent theme. This also means that when the time comes to update your parent theme (and it will come…) you can click update and not lose any of your styling or changes.
That’s a pretty complex subject but the simplest explanation is that the child theme inherits all of it’s styles and functions from the parent theme.
You need to install the parent theme and then the child theme. Some developers create nothing but child themes that are built on other themes so you need to have both the Parent and the child for your child theme to work.
Creating a child theme is pretty simple but you do need to write (or copy and paste) some code.
Choose a text editor and make sure that it’s NOT set to rich text formatting; you need to be writing in a basic text format. In your new file add in the following:
/*
Theme Name: Your_Theme_Name_Here
Template: Parent_Theme_Name_Here
*/
These are the essential bits of information to include in the header section of this file (change these to be whatever you need them to be). You can include a bunch of other bits of info like Version Number, URL of the designer (you), Description of the theme and Tags to describe the type of theme it is. These are useful if you’re going to make your theme available for others to download and use but not if it’s just for you and your site.
Next up, you need to pull in the styles of the parent theme to make your child theme look the same as the parent.
@import url('../style.css');
Note: this URL may be different depending on how many levels up and over the parent theme’s style.css file is…
So, now you’ve got a file with some code in it. Create a folder somewhere, on your desktop is a good place, and save this file to it. Call this file style.css
Call the folder on your desktop the same thing as the name you gave your theme in the style.css file header above.
That’s it. You don’t really need to add any more files into the child theme to make it work. You can right click and compress this folder into a .zip file, and after you’ve uploaded the parent theme you can go ahead and upload your new child theme and activate it.
However, you might want to have more control over the things your child theme can do and how it looks. You can copy and paste the files you want from the parent theme into your child theme folder; good files to add in are things like
You can also add in a blank functions.php file if you want to add in any special theme functionality. DO NOT just copy over the parent theme’s functions.php file into your child theme, you’ll get all kinds of errors as WordPress tries to load the same thing twice from two different locations…
In your dashboard under Appearance -> Themes select your new child theme (it will likely have a blank thumbnail image as you’ve not uploaded one!). If you had the parent theme activated before you activate the child theme that’s fine; head back to your browser, clear the cache and refresh the page to see your child theme take effect.
If everything has gone according to plan you shouldn’t notice any difference at all! 😀 If you activate your child theme without the parent theme being installed WordPress will give you an error message telling you you need to install the parent theme. Just go ahead and install it, then try activating your child theme again and it should work now.
The fun begins now when you go to Appearance -> Editor; you have a style.css file there for your child theme that you can edit to your heart’s content and it won’t have any effect on the parent theme. All your edits and new css rules in this file will override the parent theme.
I hope all that makes sense, it’s a bit of a hefty concept to grasp but if you get it and implement it then it can save you so many headaches down the line.
[/su_spoiler]
[su_spoiler title=”White Screen Of Death” style=”fancy”]
There are many things that can contribute to the White Screen Of Death (it usually means that WordPress has run out of memory on the server to function properly) but most of them are the result of only a couple of things:
If you’ve followed the process for upgrading the core and taken the reactivation steps for your plugins and suddenly you’re confronted with a blank white screen then the chances are that you’ve just activated the plugin that’s causing the error.
One of the main problems people find with the White Screen Of Death is that they can’t access the admin section of their site to sort out the problem. So how do you do it?
If you can’t get into the admin section of your site to delete the problem plugin you can do it via your Web Hosting Account. Using your hosting Username and Password login and open the File Manager. Navigate down through the folders to wp-content -> plugins and you can find the folder for the troublesome plugin and delete if from here.
If you’d rather delete things from the dashboard of your site then just rename the plugins folder itself rather than digging about inside looking for a specific plugin. I usually just rename it to plugins_old.
Once you’ve deleted (or renamed) the dodgy plugin or the plugin directory, delete your browser’s cache and refresh the page and see if things have returned to normal. If it has then you can return to activating your plugins.
Once your site is up and running again, if you have anymore plugins to activate keep going and repeat these steps:
You’ll now likely get automatically generated notifications that plugins x, y and z need to be updated. If this happens go right ahead and update them. The developer has clearly been busy making sure that things would work when the new core version came out. 🙂
Some plugins will take a little longer to let you know they need updating as the developer works feverishly to make their code work with the new WordPress code. As and when these update notifications come you can just update and move on. (If after one of these updates you encounter the White Screen Of Death, just go back over these notes to find the best way to neutralise the plugin’s effect on your site.
As well as checking through you plugins to see if that’s the cause of the White Screen Of Death you can also reset the theme on your site to it’s default WordPress theme as sometimes it’s the theme that’s the issue.
Obviously you can’t do this via your dashboard while you’re facing off against the White Screen Of Death so you’ll have to do it via the Database. This isn’t quite as scary as it sounds.
In your hosting cPanel access the phpMyAdmin feature to get your hands on the database. If you’ve only got one site running on your server then you’ll likely only have the one DB to play with. Select this DB on the list on the left and your screen will refresh to reveal all of the tables that make up your site.
TREAD CAREFULLY. You can do all sorts of damage in here…
You need to edit entries in the WordPress Options Table to change the theme back to the WordPress default theme. Search through it for the following:
Each entry row has a little pencil icon next to it on the left. Click this to enter the edit mode for that row.
Change the Value to twentyeleven (exactly like this, all lowercase and joined together) in each of these row values, saving the changes each time!
Once you’ve finished this, go back to your browser, delete the cache, refresh the page and see if you can now get into your site. If you can, groovy. If you can’t…
Try a combination of these things; reset the theme to the default in the DB and then in the cPanel (or ftp) go through the above detailed process for deactivating and reactivating your plugins to check if one of them is the problem.
Hopefully this will fix your problems but if it doesn’t and you’re tearing out your hair drop me an email at sos@ikarra.com and I’ll get back to you and we can take it from there. There will be a small charge for my services, my hourly rate of £20.00
[/su_spoiler]
[su_spoiler title=”Can’t Login To My Admin Section” style=”fancy”]
This is frustrating and often accompanies the White Screen Of Death. If you encounter this then you need to try to deactivate all your plugins and reset your theme to the default using the steps outlined in the above section on the White Screen Of Death.
You’ll need access to the server either via a direct login to it’s cPanel or via an ftp program like Filezilla (Mac & PC) or Cyberduck (Mac). Once you’re in the site’s backend just follow the instructions in the above section and you should be ok…
If for some reason things don’t work for you I am available to assist at my hourly rate of £20.00 so please get in contact at sos@ikarra.com and we’ll take it from there.
[/su_spoiler]
[su_spoiler title=”I’ve taken over running a site and don’t have the login details” style=”fancy”]
This is a tricky one; if you’ve taken up the running of an existing site that’s using WordPress then in a perfect world there’d be some kind of handover from the outgoing admin to you but that’s not always the case.
So what do you do when you’re facing the login screen with nothing to type?
This sounds obvious but if you’re able to contact the old admin of the site and get their credentials then that’s the simplest solution. However, contacting the previous admin could also work on a different level.
If they are still using the same email address they used when they installed or managed the site before you then you can use that email address to reset the password and then get the old admin to do the reset and give you the new credentials. This may seem like a long shot but it’s definitely worth a try if you’re still in contact with the old admin…
If you’ve not got details for the individual site but you do have details for the server login then you can reset things in the database.
In the hosting cPanel, in phpMyAdmin (it’s a good friend, get to know it and be comfortable poking about in it) make your way to the WP_USERS table. Here you’ll see a table with all of the registered users on the site.
Find the row with the admin user’s username listed and click on the pencil to enter the editing screen. In the Password field, delete all the gibberish looking code that there and replace it with something else, preferably a very strong password (but if you’re in a rush you can use anything here so long as you can remember it to login to the site and then change it to something better!).
Once you’ve entered the new password here you need to encrypt it; there’s a dropdown menu under the heading “Functions“, in this menu you’ll see an option called MD5. Select this and then save all your changes.
The next step is to go back to your newly inherited site and try the new login credentials you just tweaked. Fill in the username and password (the new easy to remember but must be changed as soon as possible one) and you should be in your site.
Now the fun begins as you get to start using it. Take some time to familiarise yourself with the layout of the dashboard, especially if this is your first WordPress experience. Read up as much as you can on how to do the basics like creating posts and pages, installing and managing plugins and themes and read around these issues too; there is so much literature available to help you get on your feet and there’s always the WordPress.org support forums if you need some extra tips. 😀
WordPress is a great platform and a great community so you’re not alone as you begin this job.
Start again. Sad but true, if you can’t get into the site and you can’t get into the hosting account to access the database and you can’t reach the previous admin(s) you may need to start a fresh new site to pick up where the old one left off.
If you want to use the domain name then that’s another set of login details you’ll need to track down. If you can’t get in contact with the old admin (who is likely the person who registered it in the first place) then it’s time to come up with something new and just start over.
I’d advise against copying the content from the old site (copy and paste) as Google and other search engines frown upon duplicated content and that can adversely affect your SEO.
It’s a pain to have to start from scratch but it’s a new chapter and sometimes that can be a good thing.
[/su_spoiler]
[su_spoiler title=”My Admin Dashboard Is All Messed Up” style=”fancy”]
Sometimes you can login to your site with no problems but you notice something’s not right. It could be that flyout menus on the left of you dashboard aren’t working or the usual dashboard widgets aren’t there; it could be that you’re creating a post or a page and the editor isn’t letting you switch between Text and Visual; you may no longer be able to access the plugins or themes sections in the dashboard. If that’s the case then you’ve got a conflict going on somewhere under the hood.
Often it’s just an old fashioned conflict between WordPress + plugin or theme. Fortunately this conflict isn’t quite serious enough to create the dreaded White Screen Of Death but it’s still an unwanted pain in the neck.
Once again you need to follow the steps outlined in the section above on dealing with the White Screen Of Death. Catching this problem now, nice and early, can save you from encountering the White Screen Of Death further down the line.
Just take your time with it and go through the steps and you should be ok. As always, I’m an email away: sos@ikarra.com and I can help at my hourly rate of £20.00
[/su_spoiler]
[su_spoiler title=”I’ve edited file “X” and now things don’t work/look right” style=”fancy”]
If you’ve been poking about in the files of WordPress or your theme then you may have accidentally deleted something or added something unexpected that could be causing your site to misbehave.
The good news is that you should be able to fix some of it fairly easily while other bits are less simple to correct.
There’s a file in the theme that people often tinker with and that’s the functions.php file. This file controls how the theme behaves when it’s active on your site. The code in here is complicated and shouldn’t be messed about with without a pretty good grasp of php and javascript.
However, if you absolutely MUST add something in here or tweak a function’s behaviour then do yourself a massive favour and make a back up of the file as it is BEFORE you make your changes.
This is your safety net; keep this file safe and readily available. If you make changes to your theme’s functions.php file and things subsequently go wrong on the site you can overwrite the changed file with your back-up and restore things to how they were before. (remember to clear your browser cache and refresh to make sure that things are back to normal)
If things go drastically wrong as a result of your changes and tweaks then follow some of the guides on this page for more information on how to solve login and White Screen Of Death issues.
The simple advice here is: DON’T.
WordPress is a complex beast and a missed comma or semi-colon somewhere could bring the whole thing crashing down. It’s developed by expert coders to function optimally so you don’t have to do anything to it.
If, however, you feel that there’s something you’d like it to do and you’re a coding guru then read the literature on creating your own plugin. If you can keep your new code totally separate from the WordPress Core by making it a plugin then there’s a lot less chance of your site falling over as a result of your messing with the core.
Follow the WordPress advice strictly to avoid your site having a negative reaction to the code in your new plugin.
If you’re not a coding guru and there’s something that you want WordPress to do and you can’t find a plugin to do it then you can always hire a developer to make one for you. They’re not cheap and depending on the project and your needs you could be paying a tidy sum but if it’s worth doing it’s worth doing it right.
Once again: DO NOT POKE ABOUT IN THE CORE FILES OF WORDPRESS UNLESS YOU KNOW EXACTLY WHAT YOU’RE DOING.
[/su_spoiler]
[su_spoiler title=”I’m getting errors when I visit my site” style=”fancy”]
They may be cryptic and sometimes they’re just strings of gibberish if you don’t necessarily know what you’re looking at but they are very handy when trying to find out what’s gone wrong on your site.
There are so many different types of error code and strings that can be thrown up by a website or a web server. There are some common ones though…
Most people have seen this one at some point in their online lives. Even if they don’t know what’s actually caused it people know that it means what they’re looking for isn’t where they think it is.
With WordPress it can be a case of Permalinks being wrong that’s causing people to see this error page.
Permalinks are a feature of WordPress that makes your URL’s look more human readable. There are quite a few different combinations you can use to set this up and it can be quite fiddly. You can set these under the Settings -> Permalinks menu in your dashboard. You can create combinations using these placeholders:
Personally, I tend to go with the format:
/%category%/%postname%/
The slashes are very important so make sure they’re in there!
As mentioned above, the slashes in the permalink format are vital. Ensure they’re in there.
The main reason why they might not work is found on your server. There’s a file called .htaccess which an absurdly powerful and darkly mysterious file that speaks in what are called Regex codes or Regular Expressions. They look like a cat has just walked over the keyboard but they all mean something and they do some very complex things.
One of the other things is does is keep a record of the different server modules that are active and available to your site. The one that makes permalinks work is called mod_rewrite. Your .htaccess file should have the following code in it:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
This tells the server to behave itself when you pass it a URL that’s been made human readable. It should be there by default when you install WordPress, especially so on servers and hosting that is set up with WordPress in mind. If it’s not there, add it in yourself. (you may need to change permissions on this file before you can edit it, and you may also have to tell your cPanel file manager to show hidden files and folders before you even see it!)
Surprise surprise, a Windows machine doesn’t do something that everyone else does…
For more information on how to kick a Windows box into shape see this page in the WordPress docs.
This error is usually accompanied by a total lack of website. It’s a white page with the 500 error code and some text with a bit more information on it.
Sometime this tells you that WordPress can’t establish a database connection; there are several reasons why this could be the case.
You may be experiencing a conflict with plugins and themes that are not compatible with your version of WordPress; you may have a corrupt .htaccess file; there may be corrupt files in the core of WordPress; you may have added some new code to a file somewhere and not used the correct syntax.
For a full and detailed explanation of how to correct these 500 error issues please refer to this site: wpbeginner.com
I would go into detail about the 500 error here but I would be paraphrasing this site and it would be a loooooooong section!
This is essentially a miscommunication between servers. It’s not necessarily anything you’ve done but somewhere in the chain a server has either refused a request or sent a badly formatted one and as a result you can’t see what you’re after.
The good news this is usually temporary and doesn’t generally last very long. There are some things you can do to try and remedy the situation from your end but bear in mind that the actual problem is quite likely on a computer somewhere on the other side of the world and not on your sofa…
If these don’t work then the chances are quite high that the problem is on the servers out there in internet land and you may just have to be patient and keep refreshing the page/clearing the cache to see if the problem clears itself.
This is quite a common error that people see when using WordPress. There can be a few different reasons for seeing this error:
You can check and repair your database via the cpanel in your hosting, via phpMyAdmin or via WordPress itself by adding a define statement to your wp-config.php file. Details of how to debug and correct these errors are available on this page at wpbeginner.com
It’s very tempting to try out some new code snippet to make WordPress do something cool but this comes with it’s own risks. Some code may only work on previous versions of WordPress; it may be badly written; you may miss out a closing character when copying it in to the file; when copying it from a website it may import different versions of apostrophes and double quote marks rather than the plain text versions that code requires to execute.
If you’re looking to paste in some new code to your theme’s functions.php file (or any file in your WordPress installation) please read this guide to pasting snippets of code in WordPress.
The really good news about these error codes is that they will generally be very specific and tell you exactly which line of which file contains the error 🙂
Your site uses physical resources on a server and it’s allocated a certain amount. WordPress also has a default, standard operating memory allowance which is set in the wp-config.php file.
You’ll see this memory error if your site uses too many plugins or has to many things running at once that need to execute php code and query the database. This can happen quite easily as the scale of your site grows and you add in more features and plugins when you become power-mad and demand more shiny things!
define('WP_MEMORY_LIMIT', '32M');
You can increase this to 64M but if you need any more than this you’ll need to contact your hosting provider and negotiate with them to up the allowance in the php.ini file. If you’re on a shared server they might not be too flexible with it but it depends on the host…
[/su_spoiler]
[su_spoiler title=”Images/media are not showing/uploading” style=”fancy”]
This is quite a common issue and has to do with file and folder Permissions on the server.
When WordPress is set up it should set these correctly but there are things that can change them or reset them. If your host upgrades the server environment it can change the permissions; you could have been hacked and the hacker or malware script has changed them or a plugin/theme has been uploaded from a source that’s not that reputable and that has caused the problem…
Your uploads folder should be set to 755. If this means nothing to you don’t worry. You can find out if this is the case via your cPanel file manager. Navigate to wp-content -> uploads and you should see a column on the far right hand side that has the current permissions listed.
If the folder’s permissions are currently NOT 755 (or at least 744) highlight the folder in the list and across the top of the page you’ll see the permissions icon has become active (it’s a key icon). Click this icon to open the permissions dialogue box and check the boxes until the number reads 755 then click save.
Head back over to your site; clear the browser cache and refresh the site and try to upload an image to see if things are working again. Hopefully they should be. If not, please get in touch at sos@ikarra.com and I’ll see what I can do at my hourly rate of £20.00
[/su_spoiler]
[/su_accordion]
There are other things that can go wrong and many things that people seek help with regarding Plugins and Themes and I’ll cover some of those in other posts.