Trying to optimize the site performance on one or two of my projects which I’m using Roots, I realize there are a lot of options to use. Here’s what I understand about the available options:
- Grunt tasks - this is pretty obvious, where it includes minifying. Good first step
- Caching/compressing/concat plugins like Supercache, W3TC., etc are now not recommended, as pointed out to me here even though it’s still listed at the bottom of the Starter theme page. Then we have the homegrown plugins on Roots own page, which leads to…
- .htaccess plugin - Obviously built and optimized for Roots/WP, it seems the obvious choice and should cover everything the above plugins could handle. So right now, I’m defaulted to this. But then you have more options available for further tweaking such as…
- mod_pagespeed - My host gives me the option to turn this on. Considering the above plugin already does this, and we have Grunt tasks to handle some other parts of this, is there any benefit to using this? Would it be incompatible with another process Roots uses?
- CDN - My host also gives us access to Cloudflare (or it could be Akamai, Amazon, MaxCDN, etc.) . Using any or all of the above, could this further help us tune the site? Maybe just use Cloudflare for images? Run the whole site through Cloudflare after all these tasks?
- So then there are techniques like using BootstrapCDN, Google CDNs for JS, and others. What about incorporating UnCSS to get rid of unused CSS? It seems irresponsible to use the complete Bootstrap library but also quite daunting to figure out which modules in both JS and CSS to lose.
I’m really curious what best practices that you follow that speed your sites up that I’m missing or don’t know. Performance should be just as important and written up on here as installation and configuration.