June 22 2012

Optimize Your WordPress Website in 5 Minutes

Optimizing your WordPress website can be painful, There are so many different options and combination to choose from that makes it impossible for the standard user to have a super charged website. The main issue with most of the WordPress blog owners is simple. They think that by starting a self-hosted website it will be fast flexible and it wont need any maintenance or advanced skills which is wrong. Creating a website that is self hosted is kind of easy but having it running fast, secure and without downtimes its not.

After my website’s huge re-design I have developed my WordPress optimization skills in a level that I can easily help someone with his/her website. I’ve written this tutorial in plain english in order to be understandable and readable by people with the basic knowledge of english. Also I will provide detailed information about each step that I ll make in order to wonder why I did that which was my main issue while I was researching for tutorials on how to optimize my own website.

Requirements
Starting with the basics in order for this tutorial to be effective you need to have the following.

A Shared Hosting Server
Basic Knowledge of the WordPress Platform
At Least $25 available to purchase Cloudflare Pro

Speed Test Websites

  • http://gtmetrix.com/
  • http://www.webpagetest.org/
  • http://tools.pingdom.com

Godaddy shared hosting has done a huge update to their servers in 2010 which made them quite faster than before but still, having a shared hosted website in Godaddy with out any custom optimizations or speed optimization services makes it simply a slow website.

There are many cheap and expensive solutions out there that you can follow but the thing is that you cant be sure that they will work for sure with your selected theme and settings so the only choice you have is to try different combinations like I did and find what works best for you.

2.0 W3 Total Cache Plugin
Download W3 Total Cache Plugin and install it, (Download it Here)
the basic configurations are fine do not change anything if you are not sure of what you are doing.

So when you activate the plugin all of the settings are disabled. If you see any strange message that says something like “Permissions are not writable” either for .Htaccess file or for the wp-contents folder then you have to go through your favorite FTP Application and change the permissions of these folders to either 644 or 755, this will do the trick. (After you finish with the setup make sure you add the default permissions back)

Minifying Javascript and CSS
Most of the websites out there deliver various files of javascript and css while the website loads and so it takes more time to download 10 javascript files 1 by 1 than just 1 solid file. Same goes for the CSS stylesheets and so the solution is to combine Javascript into 1-2 files and CSS into 1 file which will cause dramatically speed increase and decrease your server load.

From the General Settings Tab Enable Minify and set it to auto (Choose Disk Enhance)

Page Cache
Enable page cache and decrease the response time (time to first byte) of your website. Keep the default settings and do not play with the values.

Database Caching
I would really recommend leaving database and Object Cache disabled if you are on a shared hosting and thats because you can only use disk cache and this will slow down your website instead of making it faster.

Content Delivery Network
What is content delivery network(CDN)? Well there are many services that offer CDN on the web but I would strongly recommend MaxCDN. So this service has tens of servers around the globe that hosts your files there and serve them to the nearest server your visitors are. So if your main server is in San Francisco and your visitor from Amsterdam he will pull your website’s files from Amsterdam which will result faster loading times.

The catch is the price though. Most of the CDN Services cost a lot but not if you have less than 300.000 page-views per month. Personally I wouldn’t recommend CDN for a website that has less than 1M traffic/Month because its a pretty expensive solution. Usually the rates goes as follows.

Browser Cache
By Enabling browser cache you reduce the server’s loading time. Again leave the default options on and do not play with the values.

3.0 Setting up Cloudflare
Go to Cloudflare (Click here) and Create an Account. Then go into this website (Link) and watch the tutorial on how to setup your DNS Settings really quick UNTILL STEP 10. (Do not go any further). You don’t actually need to download any other plugins to setup your Cloudflare account

Choosing the right settings for your Cloudflare Account.
Heres the deal, Cloudflare promises security which is a great thing but I have observed many complains on the web about Cloudflare’s security that locks normal visitors out of websites or either ask them to fill out a captcha before they go into the website which is not good and effective so I would strongly recommend not to enable security options.

Settings Overview
Development mode: OFF
Automatic IPv6: OFF
Outbound Links: OFF
Always Online: OFF
IP Geolocation: OFF
Google analytics: ON
SSL: OFF

Security Tab
Basic Protection: OFF
Challenge Passage TTL: 1 Week
Email Address Obfuscation: ON
Server side exclude (SSE): OFF
Browser integrity check: OFF
Hotlink Protection: OFF
Advanced security (Firewall): OFF

Performance Profile
Caching Level: Simplified
Minimum Expire TTL: 16 Days
Auto Minify: OFF (You already minifying your JS and CSS with W3TC)
Rocket Loader: Automatic (This one rocks)
Website Pre-loader: ON (Amazing Performance)
Polish Image Optimization: (Still in beta) 70

Now in order to have the website pre-loader and the polish image optimization you will have to pay about $26/month and if you ask me, Yes! its worth it because these 2 little options there will have a huge impact to your server’s loading time.

Leave a Comment