The Wordpress content management system (CMS) is by default a pretty fast and optimized software. However by using lots of plugins and “design heavy” themes can really slow it down. This affects directly your visitors because nobody likes a slow loading website.
There are a number of things you can do to speed up your Wordpress blog, and quite a lot of methods will be discussed in this article.
Lets assume that you have created a killer article and you know that it will bring tons of traffic once you digg or stumble it. Now tons of users are on your blog and your blog serving them content using the dynamic PHP scripts files, this will put tremendous load on your sever and even you can face CPU outage. This is more likely to happen when you have a self-hosted blog.
If you can make static mirror pages of your blog posts, it will save you and your server. WP-Super-Cache plugin does exactly that and we will discuss in great deal in this tutorial. You should also consider following steps to reduce page load time

WP-Super-Cache plugin is a very fast cashing engine for wordpress. It generates static HTML files from dynamic blog posts. Once this plugin generates a static html file, that file will be executed in your browser instead of the wordpress PHP scripts that are much heavier and take far more time to load.
Static files are only displayed to following set of visitors…
It is correct because when user’s details are displayed on the post after they leave comments. These visitors are served dynamically and they are very few in numbers so your server is safe from being overload. Now lets study the plugin.
Step - 1
Open your .htaccess file, it should be in your website root. Insert following code into it.
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /iblog/
RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{QUERY_STRING} !.*s=.*
RewriteCond %{QUERY_STRING} !.*p=.*
RewriteCond %{QUERY_STRING} !.*attachment_id=.*
RewriteCond %{QUERY_STRING} !.*wp-subscription-manager=.*
RewriteCond %{HTTP_COOKIE} !^.*(comment_author_ |
Step – 2
Create a new .htaccess file inside wp-content/cache folder and insert following code in it.
`AddEncoding x-gzip .gz` `AddType text/html .gz` |
Step – 3
Copy wp-super-cache/wp-cache-config-sample.php to wp-content/wp-cache-config.php. You have to copy the file wp-super-cache/wp-cache-config-sample.php to wp-content and rename it as wp-cache-config.php. Make sure that WPCACHEHOME variable is pointing to correct direction.
define( 'WPCACHEHOME', WP_CONTENT_DIR . '/plugins/wp-super-cache/' ); |
Step – 4
Copy /plugins/wp-super-cache/wp-cache-phase1.php to wp-content folder and rename it as advanced-cache.php.
Step – 5
Open wordpress config file \wp-config.php and add following code just above
require_once(ABSPATH . 'wp-settings.php'); |
So entire code block will look like…
if ( !defined('ABSPATH') ) define('ABSPATH', dirname(__FILE__) . '/'); define( 'WP_CACHE', true ); require_once(ABSPATH . 'wp-settings.php'); |
Step – 5.1
Choose Settings > WP Super Cache. Now you should see options. You can turn on and off cache from there. You can even set legacy WP-Cache caching from there by clicking on the HALF ON radio button.

Step – 6
Next you can enable or disable compression from there.

If your browser keeps asking you to save the file disable the compression.
Step – 7
Next you can set the expiry time and garbage collection numbers. By default a very high frequency has been set because new WP-Super-Cache plugin works much better then legacy WP-Cache plugin. If your site starts to slow down, decrease the time and also the garbage collection. Garbage collection number defines, How often should expired files be deleted?

How would you know about the appox number? Well read out few lines below Garbage Collection options.
Checking for and deleting expired files is expensive, but it’s expensive leaving them there too. On a very busy site you can leave this fairly high. Experiment with different values and visit this page to see how many expired files remain at different times during the day. Simple rule of thumb: divide your number of daily page views by 5 and pick the closest number above.
Step – 8

Next you can set the rejected URIs.
Enter strings here that forces a page not to be cached. For example if you don’t want to cash last year entries enter /2007/ in the box. If any uri accessed that contains the substring /2007/, WP Super Cache will not cache that page.
Step – 9
Next you can set the filenames that can be cached, even if they match one of the rejected substring specified in step-8.

Step – 10
Next set the options to prevent WP-Cache from caching bot, spiders, and crawlers’ requests.

Step – 11
Next this plugin displays number of Cached and Expired pages for both WP-Cache and WP-Super Cache and you also have two buttons for deleting Expired and Cached pages.

Step –12
If you are expecting huge digg traffic on a page, cache that page directly. Directly cached files are files created directly off where your blog lives. Lets assume that you have a uri http://www.yourblog.com/game/ and you are expecting huge traffic from digg. You can enter either http://www.yourblog.com/game/ or /game/ in the box. Click on update direct page. Next time when an anonymous visitor will visit your site, cached file will be generated.

As you can see this plugin is little complex to set but the results are wonderful. Install it and please share your experience with us.
August 26, 2008 at 8:20 am
great tips alex:)thanks a lot
Ronald
My last blog post : Create a Realistic Graffiti Text and Image on a Nice Clean Wall
August 26, 2008 at 2:43 pm
Useful tips. Good job. Keep it up.
August 26, 2008 at 6:21 pm
Great Tips Thanks
August 29, 2008 at 3:31 pm
Who men this article is really one of the best. Stumble for you!
It is very simple and easy. I am gonna translate there tips for my own website because i need to say that this is a very great written article.
Keep up the Good Work!
My last blog post : 14 Mooi ontworpen E-commerce Websites
September 11, 2008 at 8:53 pm
Thats’ a great list of advise, I’ve been researching ideas on how to speed up my blog for a while now, but I never knew deleting old plugins would enhance my blog! Thanks
October 2, 2008 at 2:49 am
I really appreciate the post. I’ve noticed some major slowdowns on my site lately. Yes, traffic has been up, but I didn’t think enough to cause such a drop in speed.
So far I’ve put in the WP-cache. My front page loads in 1.3 seconds now. Do you know if Supercache would be better?
also, I hadn’t heard about the javascript compressor before. Looks cool!
My last blog post : They Broke the Economy - Now What?
October 2, 2008 at 11:19 am
It seems it’s better because it doesn’t load the PHP engine to serve your pages.
February 11, 2009 at 11:49 am
Great guidence. It will help the newbies a lot. Great. Keep it up
February 19, 2009 at 11:31 pm
I am not too much of a PHP guy. You helped me setup my first Wordpress blog.
February 19, 2009 at 11:54 pm
Glad we could help.
March 11, 2009 at 1:56 pm
Too many plugins can slow down a wordpress blog.
April 22, 2009 at 1:31 pm
Thanks for the information
It really worked
Regards
Avik
April 28, 2009 at 10:01 am
Awesome tips.
Thanks a lot.
April 28, 2009 at 10:02 am
thanks for the information.
April 28, 2009 at 10:03 am
Great info.
thanks
April 28, 2009 at 10:55 am
Great technical resource .
thanks
May 11, 2009 at 2:31 pm
An excellent post….thanks for sharing.
May 28, 2009 at 3:51 am
Excellent article. I am planning to implement some of these suggestions on my site to improve my load speed. Thanks for these great suggestions.