Technically Feasible

Speeding up your page load times

Likeness of Michael Oldroyd
Michael Oldroyd
⚠️ This content was imported from a previous incarnation of this blog, and may contain formatting errors

Just by configuring your site and server in the right way, you can get much faster and responsive load times out of your CMS. With mainstream open source CMS software, you are given the ability to add bolt-on functionality. It's common for each of these add-ons to provide their own set of CSS definitions, images and JavaScript. This makes these add-ons easy to implement for non-technical users. If you aren't careful though, you will end up with tens or even hundreds of CSS and JavaScript files. This has a performance penalty, which can affect your rankings in the SERPs.

For example, this site includes 44 requests for the home page (at the time of writing), which includes:

  • The page itself
  • Six external style-sheet links, Two included for the theme using @import
  • Two in-line styles
  • Four JavaScript files (jQuery and one plug-in, Modernizr, and one for the theme)
  • Three web font files
  • Images

Being the first time I had checked, I'm slightly disappointed with this. Two of the style-sheets are unnecessary (Last.FM feed widget), as I have completely overridden the styling in my template. I will remove those two redundant CSS files from Last.FM feed. When I release the updated plug-in some day I will offer a switch to disable default styling! I would have to configure caching in Apache, or add a caching plug-in for WordPress. Currently external resources will have to be requested with an If-modified-since header for each page load. That's not to mention images, web fonts, flash animations, Java applets or anything else I could include in a web page.

Over the next week, I hope to share with you some of the ways that you and I can get more out of our sites. Just by configuring your site and hosting settings, you can improve the browsing experience for your users. I will be using WordPress examples for the site configuration, but much of it will be relevant for other CMS software. I will also be referring to configuring Apache under a Linux-based operating system, though other operating systems and web server software will provide equivalent functionality.

Image of me

Michael Oldroyd

Michael is a Software Engineer working in the North West of England.