Troubleshooting most WordPress Issues

The vast majority of support requests we receive are either about WordPress or email. This is not entirely surprising as most of our clients run WordPress sites and most also use our email services.

We are always happy to help so please do not hesitate to reach out to our support if you are having issues with your site. At minimum we can point you in the right direction and in most cases we are able to identify and resolve the issues our clients are facing even if they are not server or network level. Most issues we solve are content based but we are still happy to help!

From our experience the most common issues here lately are due to the WordPress core or Plugins updating and not supporting the version of PHP an account is set to. We just now solved an issue for a client where they were getting the “There has been a critical error on your website. Please check your site admin email inbox for instructions,” message.

In this case, and many others, we don’t generally have access to the administration email for the site so we simply enable WordPress Debugging. The process for this is fairly straightforward.

  1. Using your favorite method for editing files – be it the File Manager in your control panel or downloading the file via FTP and editing it locally – open up your “wp-config.php” file. This file is located in the base folder of your WordPress Installation.
  2. Inside of the WordPress Configuration file you will generally find a line like the one just below and you will want to change “false” to “true”:
define( 'WP_DEBUG', false );
  1. Reload the website and/or reproduce the error. In many cases you will get get a verbose error that tells you which file is having the issue. You can usually identify the plugin or theme causing the issue based upon the error.

In the instance from just before writing this post the error we were seeing was:

Parse error: syntax error, unexpected '?', expecting variable (T_VARIABLE) in /home/redacted/public_html/wp-content/plugins/woocommerce/vendor/symfony/polyfill-php80/bootstrap.php on line 29

So in this case the issue is with the WooCommerce plugin. When looking at line 29 of the referenced file we saw nothing wrong although the syntax for this line is not compatible with any version of PHP older than 7.4:

function str_contains(?string $haystack, ?string $needle): bool { return p\Php80::str_contains($haystack ?? '', $needle ?? ''); }

As there was nothing obviously wrong with this line of code – the line is intact with no obvious errors we suspected the PHP version may be at fault.

We checked the version of PHP the account was assigned to and found it on version 7.0. Moving the account to version 7.4 or newer resolved the issue and allowed the site to function as expected.

It’s very common for automatic updates, or even manual ones, to update a plugin, theme, or even the core installation to a version that does not support older versions of PHP. This is but just one example but most issues share the same initial troubleshooting steps.

Steps that you may take to investigate the issue would be to set a default theme, to disable plugins, or to even roll back the installation to a backup from when the site was known to be functioning. We do suggest taking a current backup before doing that.

If you ever have issues with your WordPress site, or any site you host with us, please don’t hesitate to reach out to our support for assistance. We have decades of experience when it comes to investigating and troubleshooting issues with websites and while we can’t make promises that we will resolve your issues we’ll do our absolute best!

Running WHMCS v6.3? Saving Product Details Bug & Resolution

whmcWe recently identified a bug in the latest versions of WHMCS including version 6.3.1.  The bug consists of unexpected behavior when modifying a client’s product details and using the “Enter” key to submit the changes when the product is a cPanel Account.  In previous versions of WHMCS you could change a field, such as the renewal price, and press “Enter” to submit the form.  Over the years we had become accustomed to changing client product settings in this manner as we found it was the most efficient way to do it.

Due to this bug when modifying the details of a client’s product you have to use the “Save” button at the bottom of the form or WHMCS attempts the new “cPanel Single Sign-On” to access the cPanel account of the product.  On the surface this may not sound like a huge deal but over the course of the day the productivity lost over such a simple issue can add up fast.  In some cases the changes entered into the product are lost and even worse the representative may not notice it happened!

As we have also identified a fix we could put in place prior to WHMCS resolving this internally – we wanted to make that available.  This fix applies to both the “blend” as well as the “v4” WHMCS Administration templates. Continue reading “Running WHMCS v6.3? Saving Product Details Bug & Resolution”

What is the HOSTS file & when should I use it?

Editing HOSTS file on OS X via NanoWhat is the HOSTS file?

The HOSTS file is used by your computer’s Operating System (Windows, OS X, Linux, etc) to map hostnames to IP Addresses.  In layman’s terms your computer will check this file for any domain it needs to resolve to an IP Address prior to querying public DNS resolvers.  The HOSTS file can be used to point a domain name to an IP Address regardless of the DNS settings for the domain.

An example of a HOSTS entry to load “www.example.com” and “example.com” from the IP address “93.184.216.34“:

93.184.216.34    www.example.com example.com

Windows may require two separate lines like so:

93.184.216.34    www.example.com
93.184.216.34    example.com

When the above records are added to your HOSTS file the result is that if you try to load that domain in your browser it will connect to that IP to make the request.  If you try pinging the domain you will find that it pings that IP as well.  What this means is that you can use this to test your site on a new server before you point your world-wide DNS there. Continue reading “What is the HOSTS file & when should I use it?”

WordPress Security – Plugins & Themes – If you’re not using it, remove it!

wordpress-logo-notext-rgbOver the last few years I have seen more accounts compromised due to outdated default themes like  “Twenty Twelve”, “Twenty Thirteen”, “Twenty Fourteen”, etc.  When a user installs a new copy of WordPress more often than not they proceed to install a new theme that they prefer over the default offerings.  The big issue is the result of two missing steps that all webmasters should perform.

First and foremost is keeping everything up-to-date which can prevent the vast majority of account compromises we have seen over the years.  We keep the servers themselves secure from intrusion and we even work to protect your usernames, passwords, email accounts, etc. but there is a limit to how much we can shelter you.  If, for example, you have an outdated theme or plugin installed even if you aren’t using it – it can be used against you and your site.

Continue reading “WordPress Security – Plugins & Themes – If you’re not using it, remove it!”

New WordPress Recommendations – Google Search Console, Caching, XML Sitemaps

WordPress LogoThere are a few resources and plugins that I recommend for any new WordPress powered sites.  When I start a new site one of the first things I want to do is set up the Google Search Console.  You can read more about the Google Search Console on Google’s Support Site.

With the Google Search Console you can do the following and more:

Configuring W3 Total Cache, W3TC, for Optimum Performance with Disk Cache for Shared Hosting – Optimizing WordPress

WordPress LogoIn this article I will be explaining how to configure W3 Total Cache, hereafter referred to as ‘W3TC’, to cache your site and to serve that cache statically via mod_rewrite for maximum performance.

You will need to install W3TC via your “wp-admin” -> “Plugins” -> “Add New” if it is not already installed.  One the installation is complete you will want to activate the plugin.  Once activated you can click on “Performance” in the left navigation of your “wp-admin”.  This will drop you at a dashboard where W3TC is trying to sell all kinds of upgrades.  I will not be discussing those upgrades in this article.

Continue reading “Configuring W3 Total Cache, W3TC, for Optimum Performance with Disk Cache for Shared Hosting – Optimizing WordPress”

Configuring WP Super Cache for Optimum Performance – Optimizing WordPress

WordPress LogoIn this article I will explain how to optimize your WordPress Super Cache to use mod_rewrite to serve your cache files fast and efficiently.  The installation defaults are not ideal and will only help with the most resource-intensive sites.  When optimized properly WP Super Cache can greatly increase visitor concurrency as well as reduce your bounce rate.

We have users running WordPress on shared hosting and getting anywhere from 3,000 to 10,000 unique visitors per day without issues while we have other customers that seem to struggle to handle more than a few concurrent users at once – both on the same type of plan!  The difference between the two comes down to optimization.

One of the most important things you can do to increase the performance and reduce the resource usage of WordPress is to install and properly configure a caching plugin.  The plugins we see most often are WP Super Cache ans W3 Total Cache.  In this article I’m going to be discussing WP Super Cache.

Continue reading “Configuring WP Super Cache for Optimum Performance – Optimizing WordPress”