WordPress is a really well written platform. Out of the box it is fast and well optimised for performance......
Then you add:
- Themes
- Plugins
- Images
And suddenly it is slower than a snail on Sunday. So why is this?
Do it all themes
Themes are great, don't get us wrong they serve a purpose and have been instrumental in making WordPress as popular as it is today. Themes, by their very nature, need to appeal to everyone and are often optimised for no-one. Those 6 different types of slider, 14 page template layouts and 400 shortcodes all sound awesome and give you the potential to create any kind of site using one theme but at what cost?.....bloat.
If you look at the source code of a lot of modern themes, once they are installed on WordPress, will be loading large numbers of CSS and JavaScript files requiring multiple calls to the server every time a page is loaded. This can significantly slow down your WordPress site and cause you issues trying to optimise the site when figuring out what (if anything can be removed).
WordPress themes can and are written by anybody. Not all theme developers think about performance and optimisation, literally including the kitchen sink in the hope that they sell as many of their themes as possible. Often themes have extremely complex code structures, relying on frameworks and libraries which make theme development quicker and easier but at the cost of performance and ease of optimisation. Add to that the issue than many theme developers do not consider correct code syntax and structure you then have problems with validation and search engine optimisation.
With a custom coded theme you get a hand crafted theme that includes only the things you need. The code is written based on a tried and tested framework which is optimised for speed and performance, making search engine optimisation and performance tuning a breeze.
Many, many plugins
Plugins are also great and again contribute to the success of WordPress by providing a plug and play approach to adding functionality to a WordPress site. The temptation can be to just add one more plugin to deal with that requirement you have and before you know it you have 20 plugins installed on your site.
The issue with plugins is twofold:
- They are all developed in isolation
Whilst there is a framework and standards for developing plugins, ultimately they are developed by different developers with different approaches and levels of skill and experience. When you install a plugin you are relying on the developer to have coded and tested the plugin to make sure it is stable, secure and optimised. Sadly it is not always the case that these things have been considered or put in place due to lack of experience or knowledge. Plugins can often have security issues and be badly optimised by including large numbers of additional files and libraries all of which will slow down your site further. You can also have issues with plugin conflicts where the code used in one plugin can clash with another causing your site to malfunction.
- Plugins can seriously slow your site down
Some popular plugins suffer from the same issues as themes. They got more and more feature requests and more people using theme so can become large and cumbersome. Often they will rely on external libraries that will also grow in size over time as they need to support more functionality.
Due to the complex nature of some plugins they can put quite a load on the server, both in terms of load times for the resources but also on server memory and performance due to the large amount of code or resources required to run.
We often get asked to optimise the site and when we show clients the load times and server loads some plugins put on the site they are shocked.
Do you really need a plugin for that?
WordPress has an amazing core code framework that provides a huge range of functionality all utilising the functions that already exist in the code. Often you will find that an experienced WordPress developer can create a lot of the functionality you might use a plugin for by leveraging off the WordPress core. This results in a faster site which uses less resources.
Image Optimisation
Once you have your theme installed and you start adding content you will also be adding quite a lot of images. These images can also affect the speed of site significantly. Often clients do not understand (and why should they?) about image compression and sizing to create the most optimised images possible BEFORE uploading to the site. This saves disk space, time and makes the site as lean as possible.
You will find that you can often compress an image you export from your graphics program significantly without much (or any visible) loss in quality. There are a number of online tools you can use to upload images and have them compressed. Recently we had a client with images that were each over 1MB in size which became under 200KB after compression. That is a whopping 70%+ reduction in file size!
Some online compression services:
You can also install plugins (yes another plugin) into your site which will compress your images on the site using an internal or sometimes cloud based solution. This can be a good option if you already have a large number of uncompressed images on your WordPress site already and want to optimise them.
Two good image compression plugins for this are:
http://wordpress.org/plugins/ewww-image-optimizer/
https://wordpress.org/plugins/wp-smushit/
Why Should I Care?
If you have every gone to a site and sat there looking at a blank screen or a spinning loading symbol for more than a couple of seconds then that is why you should care.
Page load speed has a massive impact on a customer's perception of your business and even whether they stick around to see your site at all. Google also places a large amount of importance on the time it takes a website to load. A slow loading site will without doubt affect your search engine rankings.
If you have a snappy, fast loading site then you can maximise your search rankings and maximise the potential of converting each visitor to your site. You'd be crazy not to!
So how can you make your site faster?
There are some simple things you can do to make your WordPress site faster:
- Switch to another theme that is better optimised or have a custom theme developed
- Install and configure a caching plugin (more to come on that next post)
- Get your developer to look at deregistering scripts and styles that are not needed
- Use a content delivery network
- Get your developer to look at moving scripts and styles to the footer of your site to avoid blocking page loading
- Get your server to use gzip compression
- Evaluate your website host to ensure performance and resources to suit your site
You can test the speed of your site and see what is taking time to load and putting stress on the server using these tools:
https://developers.google.com/speed/pagespeed/insights/
We are sure you will be amazed what you find!
Need some help?
If all of this is sounding too hard, confusing or just plain boring (hey we understand you just want to run your business!) then why not give us a call to have a chat about how we can help speed up your WordPress site. Give us a call on (02) 8097 7957 or contact us online and we will call you right back.