Web Hosting Blog

7 quick tips to instantly speed up your WordPress site

06/05/2010

Posted in: Your Website

A couple of weeks ago we looked in to Google’s announcement that they are using a page’s load time to rank a sample of sites (1%) and what it meant for your website (you can read that post here).

One of the most resource hungry ways of creating a website is WordPress. With its multiple CSS, JavaScript and PHP files and a heavy reliance on calls to databases a WordPress site can easily become bloated and slow. Web masters who use WordPress need to look at how they can decrease their website‘s page load speeds. Here is how.

How do I find out how fast my website is the first place?

To see how your site is performing and to get a list of recommended changes I would start with looking at “Site Performance” within the Labs section of your Google Webmaster Tools.

To check out your site on spec you can also install Google’s page speed plug-in for FireFox here http://code.google.com/speed/page-speed/download.html. This site within Firebug (also required) and gives a page a score out of 100 along with what you need to improve.

Before we get started, a word of warning.  If you decide to make any changes to your site you must make a back up to cover yourself in case anything collapses. It literally takes a couple of minutes to do and will save you some serious heart ache!

Bring multiple files in to one

Every single item on a page generates a separate request to the web server, this includes the HTML page, the CSS page(s), JavaScript, image etc. For example, every plug-in has a PHP file, and a lot have their own CSS and JavaScript files and each one must then be called before the page can be loaded. To reduce the number of requests look at collating all the CSS in to one CSS file and all the JS in to a single file as well.

Install WP Super cache

This plug-in will create a HTML cache of your pages so repeat visits don’t require WordPress to call the server for the PHP files WordPress is built around. In their own words “This plug-in generates static html files from your dynamic WordPress blog. After a html file is generated your web server will serve that file instead of processing the comparatively heavier and more expensive WordPress PHP scripts.” The plug-in can be downloaded here http://wordpress.org/extend/plugins/wp-super-cache/

Disable or delete unused plug-ins

Some plug-ins can have a ton of scripts and code so if you’re not using a plug-in disable it and consider deleting it. Decide which plug-ins are necessary for your site and then do-away with the ones that aren’t needed. You’ll see the benefit very quickly.

Remove dynamic social media icons

Do you really need that dynamic social media icon that shows the number of time it has been shared, bookmarked or forwarded? Every time your page loads the icon calls home to update the figure often noticeably slowing down the page. Your best approach is to use static images that allow people to share your ideas but don’t have to call home.

Use excerpts on your home page

Rather than showing all the content of your 10 most recent blog posts on the home page with all the text and images (and the load times that come with that), display snippets to make sure only a small amount text is shown and no graphics. This will noticeably speed up your home page’s time instantly. To display an excerpt on your home page, edit the index.php replacing…

<?php the_content(__('(more…)')); ?>

With…

<?php the_excerpt(__('(more…)')); ?>

Optimise your database

Like your home PC’s hard drive, as your database grows it can start to become a bit messy and need the equivalent of a defrag. You can choose to do this manually using phpMyAdmin using the ‘Optimise tables’ option or install this plug-in to do it for you http://yoast.com/wordpress/optimize-db/

Reduce the size of your image files

The web works fine at 72dpi you don’t need to push it up to print quality 300dpi. Super glossy hi-res images are lovely to look at but they can take an age to load, especially if you have a lot on one page. The reality is you don’t need eye bleedingly hi-res images on a website and lower res images are just as effective.

If there are any you use on your site and you’d like to share them leave a comment below and we will get them added to the list.

 

Was this article useful? Let others know

(No ratings have been submitted for this entry yet)

Comments

Please remember that all comments are moderated and any links you paste in your comment will remain as plain text. If your comment looks like spam it will be deleted. We're looking forward to answering your questions and hearing your comments and opinions!

{author}

 

  •   06 May 2010 at 11:41

    I would like to use W3 Total Cache plugin instead of WP Super Cache, it has built-in features like minify CSS, JS files and allows us to use CDN. BTW, these methods are just on-site optimization, we must consider about the server more.

    Deluxe Blog Tips  
  •   06 May 2010 at 13:06

    Thanks for the tip!

    Matthew  
  • Neil
      06 May 2010 at 14:13

    The first prt of call should be optimisation of their own site, its files, and templates. Wordpress is built to be easy to use, and therefore does a lot of processing to give you everything you need, everywhere. As a result it does do a lot and can be slow - Not a great deal you can do about this as the programmers optimise this as best they can (i would hope!).

    File optimisation (JS, Images, etc) is the users responsibility - but with WP being so easy, many people do not have the knowledge to do this on a day by day basis - which is probably 50% of the lag.

    The rest - as said in the above is down to the server and network environment. Shared hosting can power sites like wordpress and be fine for the average user (who have issues mentioned above). But for busier sites surely you cannot recommend shared servers and would recommend a dedicated box? Any dynamic sites on a shared server will often see terrible lag on MySQL calls

    Neil  
  •   06 May 2010 at 17:43

    Turn off the Atom feed and pingback unless you really need them, and check the header.php in your theme folder. Chances are it may be calling multiple version of things like JQuery when you only need to call one. Minifying your JS and CSS saves bagloads of load time

    Steve McGrath  
  •   07 May 2010 at 6:58

    Neil

    The point you make about dedicated resources for large sites is spot on, we would always recommend a dedicated server for large and popular websites to increase performance.

    Matt

    Matthew  
  •   07 May 2010 at 6:59

    Steve

    Thanks for the ideas, turning off pingback is a real saver

    Matt

    Matthew  
  • Chris
      10 May 2010 at 16:40

    Many thanks for the tips.

    I thinks much of what you have said can be applied to websites other than those based on Wordpress.Particularly what you were saying about image size and multiple Javascript and CSS files.

    Keeping this in mind can also help with your bandwidth usage as well.

    Many thanks again, great info.

    Chris

    Chris  
  •   10 May 2010 at 16:56

    Another improtant thing to do is to update the pulgins as they become available. New versions are nromally streamlined to make it work better.

    Gopala  
  •   10 May 2010 at 21:56

    whether wordpress or not, its amazing how some people just dont know how to optimise photos for the web!

    fake bake lotion  
  •   05 June 2010 at 14:59

    The comment about images sizes is wrong - DPI is Dots Per Inch and is only relevant when printing images. 72 and 300 DPI images still view the same on screen as the screen always shows one image pixel per pixel on the screen. However image file sizes are more relevant to optimising a site. This is more to do with the level of image compression used.

    Joe  

  {author}

 

  Live chat