After much trial and error I have found reasonably easy ways to make wordpress faster in a shared hosting environment. In no particular order, these are my tips for achieving a Pingdom tools score of 90+. This site currently rates as 94% and the methods below are what I have implemented to achieve this. These are just my own views and experiences with WordPress.
By simply redirecting your domain through cloudlfare servers you get an average performance boost of 200%, The best part about it is that it’s completely free and also offers excellent security features to reduce the chance of your site being hacked. Cloudflare is one of several Content Delivery Networks to choose from so don’t limit yourself.
Choose a good quality host that offers a Cloudflare Railgun Connection on the primary Domain.
Not all hosts offer what they claim. The inferior ones are plagued by outages, poor server response time and shocking customer support. I would recommend choosing a host that offers a Railgun connection to Cloudflare. Railgun ensures that the connection between your origin server and the CloudFlare network is optimised, offering an average 200% additional performance increase.
When Railgun is used with Cloudflare, its a combined performance boost of 400% which is mighty impressive. If your budget allows, choose a hosting company that offers SSD on their servers. Most business hosting offers this and the SSD’s result in a much faster read/write time which in turn results in faster page load times. The price of business hosting is roughly twice the price of economy hosting.
Use the W3 Total Cache plugin
One of many caching plugins available but in my view, the best. It has an unbelievable amount of options that can be overwhelming at first and they do need some trial and error to get right. There are some great tutorials online to point you in the right direction. One feature I do stay away from is the minify option (css, html and js). For what ever reason it can cause sites to break and sometimes one can think its doing its job where all is working in one browser but checking the site in another browser breaks the slider functionality. I’m not saying avoid minification as its a powerful tool. I use the minify option in Cloudflare as it seems to have a gentler approach to its compression and causes no functionality issues in my experience.
Enable Gzip compression.
This is compression handled by the host server. It can be activated in .htacess with some additional code or in cpanel it can be activated under the “optimize website” option.
Compress images and then compress them again.
Quite often I have seen images around the 1MB mark in the image library of a clients site, this is way over the top and is eventually going to grind things to a halt if that file size becomes the standard. I alway resize my images relative to the size I know they will be displayed at. It doesn’t have to be exact but if you know an image is going to be used as a thumbnail then make sure its not 1920 pixels wide. When saving jpg’s, I choose a compression of 60 as this seems to offer very little noticeable pixelation/image degradation and impressive file reduction sizes. Once I am happy that I have compressed my images as best I can I then install the plugin EWWW image optimiser. This file carves through your image library and throttles any extra bloat in your images.
Delete unnecessary plugins and use well coded themes.
I try and keep my plugins to under 10 and delete anything that’s not being used. This is not a strict rule and the most important thing to be aware of is that all it takes is one badly coded plugin to slow everything down. The same goes for a quality theme. Make sure it’s had plenty of downloads and positive feedback so any obvious issues should have been weeded out by the time you get your hands on it. Alway make sure your plugins, themes and WordPress versions are up to date.
Max out memory.
Typically done by editing the wp-config file. It makes sense that a site low on resources will underperform so maxing out the memory in wp-config will benefit performance. If you are running Woocommerce or other hungry plugins this move is essential.
Remove Query Strings From Static Resources
Install the plugin “Remove Query Strings From Static Resources” from the wordpress repository. This plugin will remove query strings from static resources like CSS & JS files inside the HTMLelement to benefit your over page speed scores