- WordPress 4.0 or later
- Apache or Nginx
- php.ini memory limit: 40MB (recommended: 96M)
- PHP version 7.0 or greater (recommended: PHP 7.3)
- MySQL version 5.0 or greater (recommended: MySQL 5.5 or greater)
- The mod_rewrite Apache module (optional)
For optimal performance the server requires some settings to be made, the optimizations include:
- Use a cache plugin – we recommend WP Super Cache
- Page Speed optimization – we created a guide for this
If WordPress performs fine on your host, the theme should too. Next, we will present you with a list of common hosts and the traffic you can expect to host on them.
Please note that the numbers quoted here do not represent a guarantee, hosting performance is depending on your WordPress configuration, plugin configuration, and general OS configuration. All numbers assume that you use a caching plugin like wp super cache. Also, a CDN solution like Cloud Flare should help a lot.
Godaddy or another cheap shared hosting:
- Should handle 1- 2000 unique users per day
- Will not handle traffic spikes well
- Use if possible a small number of plugins
- Should handle 2000 – 4000 unique users per day
- Will not handle traffic spikes well
- Get as much ram as possible
- Should handle 4000 – 6000 unique users per day
- Should be with more than 4GB of ram
- If properly configured and with enough ram and a swap partition the server should handle traffic spikes
- Should handle 6000+ unique users per day
- On dedicated servers and with that traffic number, at least 8 GB of ram will help a lot
- It should handle traffic spikes well
System status parameters guide
Our themes include a special section called System Status. Here you can check if the server and WordPress parameters are properly set for optimal performance. In this guide, we will cover how those parameters can be set.
1- WP-Config settings
The wp-config.php file is located in the WordPress root directory.
WP Memory Limit:
This parameter sets the amount of memory used by PHP and by default WordPress can go up to 40MB. To avoid Memory Exhausted error this parameter should be set to at least 256MB and this can be done from WordPress wp-config.php file.
define( ‘WP_MEMORY_LIMIT’, ‘256M’ );
It is an option intended for development, it controls the reporting of some errors and warnings. It may display unwanted messages so you should disable it on your side. The default value is false.
// put it in wp-config.php file to turn of debugging define('WP_DEBUG', false);
WP Debug Log & Debug Display:
Enabling Debug log tells WordPress to store all errors and warnings in a file. It is good for development purpose but it is highly recommended to turn this option off in a product site. This option is not added to your config by default. However, if you or your developer added this to your wp-config.php file then you can disable it like below.
// put them in wp-config.php file to turn of debugging define( 'WP_DEBUG_LOG', false ); define( 'WP_DEBUG_DISPLAY', false );
Turn off all debugging and testing related settings in a live WordPress site for maximum security. You can learn more about it on the official site here.
2- Php.ini parameters
- max_input_vars – This sets how many input variables may be accepted (limit is applied to $_GET, $_POST and $_COOKIE superglobal separately). By default, this parameter is set to 1000 and this may cause issues when saving the menu, we recommend that you increase it to 2000 or more.
- max_execution_time – This sets the maximum time in seconds a script is allowed to run before it is terminated by the parser. The theme demos download images from our servers and depending on the connection speed this process may require a longer time to execute. We recommend that you should increase it 60 or more.
- post_max_size – Sets max size of post data allowed. This setting also affects file upload.
- upload_max_filesize – To upload large files, like plugins zip files, you have to increase this value also.
Depending on the host they can be set from php.ini or .htaccess:
max_input_vars = 5000 max_execution_time = 300 post_max_size = 50M upload_max_filesize = 50M
php_value max_input_vars 5000 php_value max_execution_time 300 php_value post_max_size 50M php_value upload_max_filesize 50M
Note – Before trying any of those check the host documentation to see what’s the recommended method. The location of the php.ini may also differ from one server to the other, usually, it’s located in the WordPress root, but on some servers, it may be found in another location, you have to check the host documentation for more precise details.
Suhosin (Skip this section if Suhosin is not installed on your server)
Suhosin is an advanced protection system for PHP installations. It was designed to protect servers and users from known and unknown flaws in PHP applications and the PHP core. If it’s installed on your host you have to increase the suhosin.post.max_vars and suhosin.request.max_vars parameters to 2000 or more.
suhosin.request.max_vars = 5000 suhosin.post.max_vars = 5000
php_value suhosin.post.max_vars 5000 php_value suhosin.request.max_vars 5000
Note – If Suhosin is not installed on your host you don’t have to modify these parameters.
Required & Recommended Plugins by xLaw
xLaw requires and recommends some plugins to give you the most pleasant experience.
- xLaw Core – (Required): xLaw depends on this plugin for most of its important features like theme options, custom posts registration (Case Study and Practice Area), etc. So, you are required to install and activate this plugin.
- OneElements – Best Elementor Addons – (Recommended): xLaw highly recommends this plugin. It adds useful Elementor widgets/content blocks for building beautiful layouts with Elementor Page Builder.
- OneElements Pro– Best Elementor Addons – (Recommended): This plugin adds premium and useful elementor widgets, pre-designed cloud template library, custom header, footer and content page builder functionality. In short, this plugin adds tons of premium useful features for xLaw. Though it is a paid plugin, you get it free with xLaw theme.
- Elementor Page Builder – (Recommended): You can create amazing page layouts using this plugin. xLaw provides many useful Elementor widgets to help you create beautiful pages with a few mouse clicks. No Coding knowledge required.
- One-Click Demo Import – (Recommended): xLaw needs this plugin to install demo content on your site. You can install this plugin to install demo content on your site and remove this plugin after you have installed your chosen demo.