WordPress is a great website builder that’s incredibly simple to use, and is a preferred CMS for millions of people.
Its interface and functionality is designed especially for people without any prior experience in web development.
From selecting a theme -> through uploading content -> to marketing, all the features are quite easy to use.
Debugging a website is also not an exception.
WordPress has made debugging or troubleshooting quite easy for all its users just like using any other features. Only with some specific lines of code added or removed, debugging can be enabled in the native manner.
If you write custom codes, modify your WordPress themes or functionality, you may probably be well versed with its basic troubleshooting techniques and are easily dealing with common theme/plugin errors.
But there are still those non-technical webmasters who take help from other developers to troubleshoot errors. And some of these webmasters may even give up on WordPress due to having difficulties with basic functionalities.
Today, we will take a look at some of the most common errors that many webmasters are experiencing, and list the best tools and techniques required to overcome these errors.
Types of Common PHP Errors
- Notice: Least important error message which does not necessarily mean something is wrong, but it points out the possible improvement needed.
- Warning: A more severe error compared with Notice. However it does not cause script termination.
- Fatal error: Most serious of all, this error indicates something going completely wrong, and the script terminated.
Best Debugging Tools and Techniques
#1 Debugging in WordPress
WP_DEBUG is a PHP constant to specify the needed level of debugging throughout a WordPress site. Enabling WP_DEBUG causes all PHP errors, notices and warnings to be displayed instantly on the screen.
It also gives notices about deprecated functions and arguments within WordPress that are being used on your site and indicates the new functions that should be used instead.
Using WP_DEBUG tool on a live site may possibly hinder with your browsing experience by giving multiple notices, continuously. Hence, WP_DEBUG along with its two other variants WP_DEUBG_DISPLAY, and WP_DEBUG_LOG are not meant to be used on live site. These are designed to help in local testing and staging installs.
It is not mandatory to enable WP_DEBUG, but is highly recommended that you use WP_DEBUG mode while modifying codes or functionality of theme or plugin before you launch any website publicly.
- WP_DEBUG_LOG – It works in combination with WP_DEBUG to save all errors at debug.log log file inside the /wp-content/directory. This is very useful if you wish to review all notices at some other time or need to see the notices generated off-screen.
- WP_DEBUG_DISPLAY – This also works with WP_DEBUG to control whether debug messages are shown inside the HTML of pages or not. The default is ‘true’ which displays notices as they are generated. But setting this to false will hide all errors to be reviewed later.
#2 Debugging Plugins
Here are some of the highly recommended debugging plugins for WordPress that show detailed information about the internal errors, for any specific component or in general.
- Query Monitor – This debugging plugin is suitable for anyone developing with WordPress. It has some advanced features that are not available in other alternative debugging plugins, like debugging of AJAX calls, REST API requests, and redirects.
- Debug Bar – It is a very handy tool for getting useful information about each page of your website. Once installed, you will see a new Debug button, which can be clicked to review an analysis of the queries, templates, PHP installation, along with other useful information.
- Log Deprecated Notices – This plugin logs the usage of deprecated files, functions, and function arguments. It also identifies which functionality is deprecated and therefore offers the suitable alternatives wherever possible.
#3 Firebug Browser Add On
Firebug is a sophisticated debugging add-on that analyzes your websites for possible errors, network problems, design flaws, and function interaction between languages. It is also known for its logging feature that lets you log all errors in one place to be analyzed and fixed later. It is mainly an add-on of Mozilla Firefox browser, but a lite version is also available for other browsers.
For internal debugging analysis, Debug Bar proves most effective, whereas Firebug looks at the peripherals of the website and reviews how external scripts and plugins affect the website performance and appearance.
Keeping default WP_DEBUG mode should also be enough to fully understand and list the website errors and to understand what should be done about them. Further, external plugins can also be helpful in fixing errors faster.
Ajeet is a freelance content writer for American Webmasters Association. He is a graduate of Delhi University, India with a major in journalism. He is responsible for creating news posts for the company covering various topics related to web development. His work has been published on popular sites like Entrepreneur, Gamasutra, PicktheBrain, MyCustomers and TechWorm.