Optimize WordPress Performance

With our service, there are many ways to speed up the performance of your WordPress website.

We allow for a hefty amount of server RAM usage on our shared hosting plan for the Ultra Unlimited at 384MBs which is more than almost all hosting providers out there. Our solid-state drives, Nginx and Redis stacks also greatly increase performance. Unfortunately, some scripts such as WordPress can go over this allotment and require more resources. For larger demanding scripts/websites like WordPress, Joomla and Magento we have available the Ultra Unlimited Pro plan, VPS and dedicated server plans. Fortunately, there is a lot you can do for WordPress to optimize it so an upgrade may not be needed. To optimize WordPress performance, the following are some great tips for squeezing the most out of your WordPress installation.

Caching! Be sure you have caching enabled. Caching prevents the unnecessary processing of duplicate information every time a page is loaded. Once it is processed and loaded that processed information is re-used when caching is enabled. There are several great caching plugins available. We highly recommend WP Super Cache with the recommended options enabled in advance and preload mode enabled. In some environments "Use PHP to serve cache files" may run faster. Be sure to test the speeds between them via the benchmark websites listed below. If that particular plugin gives you any troubles WP Fastest Cache is also excellent. If you want to try a different plugin that allows for finer tweaking and does not mind getting your hands dirty we recommend W3 Total Cache. It is an excellent plugin and may be configured for xcache / opcache but we highly recommend Disk Enhanced mode in most cases. When used in conjunction with UltraSpeed (contact us to configure this) with our Unlimited Pro, VPS, and dedicated plans, it can result in ridiculously astonishing speeds! It may be installed right in your admin, plugins area. It is worth testing between these with online website speed test benchmarks such as what is offered by Pingdom and GTMetrix. When using caching and developing, be sure to delete your cache and turn it off, otherwise, you may encounter issues you may not have expected. Once complete turn it back on. 

Disable JetPack. We have seen a lot of performance issues and downtime with JetPack and recommend disabling it. 

Tidy is now available as well for use with our service which can shrink down your css, javascript
 and pages. Fast-velocity is a great plugin to use and tackle this. If you notice any css
 or js issues after enabling it, you can tweak or disable those via its interface. Be sure to clear your cache after making the changes.

Check the UltraSpeed section of your hosting control panel as we now support Nginx and HHVM for WordPress which can greatly improve load times. 

Add CDN (content delivery network) services to speed up your WordPress site as well right from your hosting control panel with us in just a few clicks with CloudFlare! As a CloudFlare Certified hosting provider we offer faster and easier integrations. Click CloudFlare in your software section and follow the easy steps. Be sure your WordPress install under settings for the website / URL includes the www. in your domain name which is what CloudFlare utilizes. If it was not set, not a problem! Set it and install the plugin "Velvet Blues" and you can quickly replace all your media images to include the www. for CloudFlare with its' easy replace feature. After replaced, go ahead and deactivate and remove the Velvet Blues plugin. 

Databases grow over time! Even if you have less traffic than usual, the load of your account may be higher as a result of a larger database. Do you really need to bloat your database with 2000 revisions of your posts? WPOptimize and Better Delete Revision Manager are both great plugins for going in and wiping out all those unnecessary saved revisions eating up database space. They will also perform an optimization afterward. The smaller the database, the less memory used. With WP-Cleanup you have the benefit of clearing out comment spam quickly as well.  Be sure to prune/cleanup/remove unnecessary table information such as logs over time and optimize your database! Reducing the size of your database can considerably increase the performance of your website. Closing comments on pages where they are not needed is also another great way to improve performance. Load up phpmyadmin from your hosting control panel with us, select the database and use the optimize function. Plugins such as WPOptimize and Better Delete Revision both clean and optimize the database. When using WPOptimize, it is best to stick to the default options.

Another tip is to use our bad bot blocker to stop bad bots from spamming and downloading your website.

Disable pingbacks and trackbacks. What was once a useful feature is now flooded with automated bots and spammers. We recommend disabling pingbacks and trackbacks. For web pages that were created with them enabled, you can disable them afterward by entering the following commands into your phpmyadmin area, selecting the proper database, select the SQL table and run the following:

UPDATE wp_posts SET ping_status='closed' WHERE post_status = 'publish' AND post_type = 'post'; 
UPDATE wp_posts SET ping_status='closed' WHERE post_status = 'publish' AND post_type = 'page';

In the case of spambots hogging up your resources, placing the following in your .htaccess file can mitigate this:

# Stop spam attack logins and comments
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} .(wp-comments-post|wp-login)\.php*
RewriteCond %{HTTP_REFERER} !.*(example.com|jetpack.wordpress.com).* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) http://%{REMOTE_ADDR}/$ [R=301,L]


Leverage browser caching. Sometimes we have to force the web browser to utilize caching on certain filetypes via expired headers which can speed up your website by having the visitor's browser re-use their existing cache files. Both mod_expires and mod_deflate must be installed. The following may or may not work, be sure to backup your configuration first. To perform this, add the following to your .htaccess file before the common WordPress configuration lines:

# Expires Caching Start #

ExpiresActive On
ExpiresByType text/css "access 1 month"
ExpiresByType text/html "access 1 month"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/x-icon "access 1 year"
ExpiresByType application/pdf "access 1 month"
ExpiresByType application/javascript "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresDefault "access 1 month"

# TN Expires Caching End #

Enable "Vary: Accept-Encoding" header. Add the following to your .htacccess file:

<IfModule mod_headers.c>
  <FilesMatch ".(js|css|xml|gz|html|ttf|eot|font.css|ttc|woff|otf|svg)$">
    Header append Vary: Accept-Encoding
    Header set Access-Control-Allow-Origin "*"

Reduce plugins! Too often we find WordPress installs which are loaded down by the use of too many unnecessary plugins. The more plugins you have installed the more processor load is required and the slower the performance of your site becomes. Try to limit your active plugins to less than 6.

Optimize your images! Again, often we find developers sticking huge non-internet friendly images up for sliders and backgrounds. Optimize those suckers! Even 25% in file size savings can be tremendous on a site. For large images, we recommend TinyPNG.org as it really can squeeze out some file size savings. For WordPress plugins check out TinyPNGSmush.it or EWWW Image Optimizer. Smush.it is more server friendly and will install on most hosting plans but is not always as clean as EWWW with retaining image quality. We do recommend using Smush.it with our Ultra 1x and Ultra Unlimited hosting plans. Use the bulk modes to shrink down your existing images in minutes. You can find the bulk mode fo Smush.it under the Media area in WordPress. For manual optimization, kraken.io works great without losing quality. To shrink files Tinypng is great but will result in some quality loss.

Use .jpg over .png on large photo images. jpg compresses far better than png when it comes to photos. Smaller image files mean faster downloads.

Some very high-load plugins include WordPress SEO by Yoast, Akismet, Contact Form 7, MyReviewPlugin, LinkMan, Fuzzy SEO Booster, WP PostViews, Tweet Blender, Dynamic Related Posts, Jetpack by WordPress, Really Simple CAPTCHA, Pretty Link Lite, Useful Banner Manager. Often one plugin can slow down your entire site from loading. Check out UsageDD to help locate that trouble plugin.

Combine and minify. Velocity, as mentioned previously, can perform this. For the more advanced, you can minify (reduce spaces and useless lines) in your files manually through an online minifier such as https://cssminifier.com/

With all of your install up to date, update your PHP to PHP7. You can see significant increases in speed moving to PHP7 (up to 200%!) as it is far more efficient and deals with multi-threading better. You can switch versions right from your hosting control panel and the "Select PHP Version" icon.

Check your external content load times. Often when you link to an external source such as an image or video, the time it takes for that object to load can affect how your page loads. When using Pingdom you can sort by load times and see if there are any external objects slowing you down.

Disable hotlinking and leeching your content. If you have some popular images indexed by the search engines you may find your images being used by others. Use the hotlink protection icon in your hosting control panel to protect this from occurring.
Note: If you have other websites on your hosting account this may not function properly.

Remove version strings. Often version strings such as css/ie.css?ver=20161207 can prevent files from properly caching with your server or CDN. To remove these strings, add the following code to the end of your theme's function.php before the php close tag:

// Remove Query String
function _remove_script_version( $src ){
$parts = explode( '?ver', $src );
return $parts[0];
add_filter( 'script_loader_src', '_remove_script_version', 15, 1 );
add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );

The "Remove query strings from static resources" plugin can also be useful for this.

Reduce how many posts show on a single page. 4-5 is all that should be necessary or use a theme that has excerpts of each page and links to them.

http keep-alive ON! When it comes to PHP scripts having a server with keep-alive enabled is a must. This prevents a connection from being re-established on every web page visited. If you are working with static files and UltraSpeed, this is not needed.

If after all these recommendations you still require more performance, we have WordPress Optimized, VPS and dedicated server plans available which we can optimize for your particular install of WordPress.

If you would like us to perform these changes for you, we have consultation available here.

  • 200 Users Found This Useful

Was this answer helpful?

Related Articles

504 error - Are you sure you want to do this?

In wordpress if you receive either of the following errors when trying to upload a theme... 504...

Not Receiving Form Email Through WordPress - SMTP

If you are not able to sent email or receive email from your WordPress contact form, you can...

WordPress Error : Sorry, this file type is not permitted for security reasons.

.svg and .xap files can result in the error "Sorry, this file type is not permitted for security...

WordPress error "The uploaded file could not be moved to..."

WordPress gives you the following error "The uploaded file could not be moved to...