Wordpress Optimization

You are currently browsing the archive for the Wordpress Optimization category.

Yahoo’s excellent Exceptional Performance series recommends optimizing images in several lossless ways:

* stripping meta data from JPEGs

* optimizing JPEG compression

* converting certain GIFs to indexed PNGs

* stripping the un-used colours from indexed images

Smush.it offers an API that performs these optimizations (except for stripping JPEG meta data) automatically, and this plugin seamlessly integrates Smush.it with WordPress.

via WordPress › WP Smush.it « WordPress Plugins.

  • Share/Bookmark

Tags: , , , , , , , , ,

When you’re using various tools to get information on what exactly is making your website slow, the most common method to display detailed information is a waterfall graph.

In this article, I will show you some tools that provide waterfall graphs and also give an explanation of how to read a simple waterfall graph.

Read the rest of this entry »

  • Share/Bookmark

Services and tools such as AOL WebPageTest will provide you with graphs and punchlists of things you need to fix.

Here is how you read them!

Load time is the time that it took to transfer ALL of the page, and for it to stop transferring.

First byte is “how long it took for the beginning of the page to be sent to the browser”

“Start render” is “When the user begins to see a page form.”

Document complete is when the document is usable.

Fully loaded includes anything that loads after Document Complete, such as AJAX calls.

“Requests” are the number of items that had to be sent individually to the browser.

“Bytes in” is the total size of items that had to be sent to the browser.

  Load Time First Byte Start Render Document Complete Fully Loaded Requests Bytes In
First View 4.752s 0.301s 2.558s 4.752s 4.752s 16 590 KB
Repeat View 0.674s 0.425s 0.238s 0.674s 0.920s 6 1 KB

So now that you know what these things mean, you ask, what should I be seeing that I need to improve?

Without a waterfall graph to give you more detail, this graph says that you need to decrease the number of requests and the total bytes in.

  • Share/Bookmark

This lovely redirection plugin logs 404s and edited post slugs, picks up some automatically and the rest you can simply add by clicking the plus button next to the 404′d item to add a redirect. BRILLIANT.

Click through for screenshot sample.
Read the rest of this entry »

  • Share/Bookmark

I am working on a plugin (originally started by DD32) that combines all external CSS and JavaScript that passes through WP_Scripts.

This will provide an order of magnitude page load time decrease for nearly all WordPress blogs.

Unfortunately, in order for this to work enough to close the open ticket, several things are going to have to be figured out:

  • Themes and Plugins need to use wp_enqueue_script() and wp_enqueue_style()
  • Most javascript will need to be rewritten, preferably to be exeecuted after the DOM is ready.
  • LTR (left-to-right) styles
  • A framework for minification and gzipping of the resulting scripts and styles.

I will be posting more about this in the future as I work out the details.

  • Share/Bookmark

Tags: , , , , , , ,

My Blog Loading Fast in Dulles, Virginia

My Blog Loading Fast (2.554 seconds) in Dulles, Virginia

My Blog Loading Slowly in New Zealand

My Blog Loading Slowly (9.392 seconds) in New Zealand

I guess I need to pay extra-special attention to my NZ, Aussie, and Japanese visitors.  Nine seconds is unacceptible, in my opinion. Sorry guys!

  • Share/Bookmark

Tags: , , ,

WordPress is one of the most popular blogging platforms in the world.  It’s fast, easy to use, easy to extend, and great at helping you hunker down and create great content.  WordPress works out of the box on many different hardware and software configurations, with different url schemes, database setups, plugins, themes, et cetera.  As a result, it has to make quite a few tradeoffs when it comes to performance.

So, you have your WordPress set up with the look and feel that you want, but how do you make it faster?

There are three primary things that make your site slow: lots of requests (too many external javascripts and stylesheets, as well as images), lots of data to send, and complexity of the page (tons of flash, really complicated javascript, etc.)

Here are five often overlooked but extremely useful tips you can use to speed up your WordPress blog dramatically, along with page load time benchmarks on a rather plain installation.

  1. Minify and combine your CSS and JavaScript
    Combining your stylesheets and javascripts into at most one external file will cut down on the amount of connections the browser has to make in order to retrieve your page. This will result in dramatic speedups! Additionally, YUI Compressor can reduce the output size of your CSS and JavaScript considerably, and should be a mandatory process in getting your blog ready for handling a digging.
  2. Move CSS, Javascript, and Images to a CDN
    A content delivery network will deliver your javascript, stylesheets, images, and whatever other content you have, to your users far faster than your site can. It works by putting lots of machines all over the world, and directing your users (transparently) to the machine closest to your user.Amazon CloudFront is great for this, using Amazon S3 as the storage behind it: it’s fast, cheap, and (relatively) painless to set up.When setting up a CDN, make sure to follow the next item, and additionally set a far future expires header. An Expires header that is set more than 48 hours in the future will prevent most browsers from bothering to request a file again to see if it is modified, and will make your site appear fast as greased lightning to repeat visitors!
  3. gzip your CSS, JavaScript, and html
    While you are moving your CSS and JavaScript to a content delivery network, you should check to see what is required to send those files encoded with gzip – it reduces the size of the content transferred over the wire dramatically. Note that many people will mention that some browsers do not support this, so caveat emptor: if you are expecting users of 4.x browsers (eg. Netscape Navigator 4.x, Internet Explorer 4.x), you may want to check to see what files will work correctly when sent gzipped to these browsers. To enable gzipping of WordPress’ output, you can use a plugin like Gzippy.
  4. Check for duplicate javascript:
    Multiple copies of prototype, jquery, etc. cut into both page load time and processing time.  Try to stick to plugins that all use the same library, and try to do everything you can to not add any extra javascript at all.  Remember that
  5. Avoid excessive use of any external content.
    Most blog readers come to a blog for the content, and do not pay attention to or use items that come from external pages.  If the flash/javascript/foobar is integral to the post’s content, put it after the jump so that it does not slow rendering of your index page for those who do not want to see that item.  Particularly of note as of the time of this writing are:

    • MyBlogLog – loads a huge flash element from minimally responsive servers
    • Odiogo – their wordpress plugin loads a snippet of javascript in the head of the document, which blocks rendering of your page until their server has responded, in addition to excessive use of inline javascript in places that are obtrusive to users who don’t want to use text to speech.
  • Share/Bookmark

Tags: , , , , , , , , , , , , , , , , , , , ,

Bad Behavior has blocked 247 access attempts in the last 7 days.

Load time improved by PHP Speedy Load time improved by PHP Speedy