WordPress themes from ThemeForest are perhaps the most popular premium themes available. Themes like Avada, X | The Theme, and Enfold have over 100,000 sales each (Avada has nearly 400k sales). These themes provide their users a ton of control and options, and the ability to build almost any site imaginable. They are certainly very powerful and its no wonder they’ve become as successful as they have.
With all that power and potential, there are a few drawbacks, however. Most themes from ThemeForest require extra plugins and scripts to be installed. Often times they come bundled with a page builder such as Visual Composer, which adds even more scripts. All of these extra installs can cause performance issues if you’re not careful. A client recently came to us to help with performance and we found the site was loading 48!!! external javascript files and 19 stylesheets! Here’s a screenshot of a performance test we took at GTMetrix:
Steps to optimize
There are quite a few things you can do to optimize any website, but this site was a special case so we’ll take a look at just a few of the items that pertained to the fact they were using a big, heavy theme from ThemeForest.
Read on to see how we took this F report card and turned it into an A!
Minify and Concatenate
The fact that 48 javascript files and 19 CSS files were being loaded was the first issue to be addressed. Reducing that number means concatenating, or combining as many of the javascript files and stylesheets into a fewer number to reduce http requests. Minifying these files also reduces their overall size which helps to speed things up. There are plugins available such as Better WordPress Minify.
Enable Browser Caching
Many, if not most of the large files on the site were rarely changed. The stylesheets, javascript, and many of the images had been the same for months if not longer. One way to take advantage of this is to enable browser caching.
To enable browser caching, you can add this to your .htaccess
file:
https://gist.github.com/spigotdesign/f0eba24bad55536d0ad6a6373ec58b58
Enable Gzip Compression
Gzip compression allows a website to be delivered to your users at up to 70% of its original size. Once it gets to the user, the browser decompresses and displays it. I’d say 70% is pretty good savings, eh?
To enable gzip, add this as well to your .htacess
file:
https://gist.github.com/spigotdesign/1998d46da75b9629869309e5df5d4a4d
Install a Caching Plugin
A caching plugin will serve up all pages on your site as static html files rather than dynamically accessing the database every page load. This dramatically reduces the time it take to load a page.
The plugin we use and recommend is WP Rocket. It’s a very easy to use and powerful plugin. In fact, it’s so powerful that it will handle all the above items for you as well. It will automatically enable Gzip compression and browser caching, and will minify and concatenate any files you ask it to. It has quite a few advanced options as well.
Or just hire Cinch
The truly easy way to optimize your site is to get our Performance Boost add on and let us do all the work. Here’s what we were able to achieve for the 48 script client after optimization: