=== WordPress Speed === Contributors: fredericktownes Tags: user experience, cache, caching, page cache, css cache, js cache, db cache, disk cache, disk caching, database cache, http compression, gzip, deflate, minify, cdn, content delivery network, media library, performance, speed, multiple hosts, css, merge, combine, unobtrusive javascript, compress, optimize, optimizer, javascript, js, cascading style sheet, plugin, yslow, yui, google, google rank, google page speed, mod_pagespeed, s3, cloudfront, aws, amazon web services, cloud files, rackspace, cotendo, max cdn, limelight, cloudflare, microsoft, microsoft azure, iis, nginx, litespeed, apache, varnish, xcache, apc, eacclerator, wincache, mysql, w3 total cache, batcache, wp cache, wp super cache, buddypress Requires at least: 2.8 Tested up to: 3.2.1 Stable tag: 1.2.0 Improve site performance and user experience via caching: browser, page, object, database, minify and content delivery network support. == Description == The **most complete** WordPress performance framework. WordPress Speed improves the user experience of your site by improving your server performance, caching every aspect of your site, reducing the download times and providing transparent content delivery network (CDN) integration. This plugin is originally based off W3 Total Cache with plans to integrate it into more CDN's as well as improve its compatibility with more webhosting companies. Benefits: * At least 10x improvement in overall site performance (Grade A in [YSlow](http://developer.yahoo.com/yslow/) or significant [Google Page Speed](http://code.google.com/speed/page-speed/) improvements) **when fully configured** * Improved conversion rates and "[site performance](http://googlewebmastercentral.blogspot.com/2009/12/your-sites-performance-in-webmaster.html)" which [affect your site's rank](http://googlewebmastercentral.blogspot.com/2010/04/using-site-speed-in-web-search-ranking.html) on Google.com * "Instant" subsequent page views: browser caching * Optimized progressive render: pages start rendering quickly * Reduced page load time: increased visitor time on site; visitors view more pages * Improved web server performance; sustain high traffic periods * Up to 80% bandwidth savings via minify and HTTP compression of HTML, CSS, JavaScript and feeds Features: * Compatible with shared hosting, virtual private / dedicated servers and dedicated servers / clusters * Transparent content delivery network (CDN) integration with Media Library, theme files and WordPress itself * Mobile support: respective caching of pages by referrer or groups of user agents including theme switching for groups of referrers or user agents * Caching of (minified and compressed) pages and posts in memory or on disk or on CDN (mirror only) * Caching of (minified and compressed) CSS and JavaScript in memory, on disk or on CDN * Caching of feeds (site, categories, tags, comments, search results) in memory or on disk or on CDN (mirror only) * Caching of search results pages (i.e. URIs with query string variables) in memory or on disk * Caching of database objects in memory or on disk * Caching of objects in memory or on disk * Minification of posts and pages and feeds * Minification of inline, embedded or 3rd party JavaScript (with automated updates) * Minification of inline, embedded or 3rd party CSS (with automated updates) * Browser caching using cache-control, future expire headers and entity tags (ETag) with "cache-busting" * JavaScript grouping by template (home page, post page etc) with embed location control * Non-blocking JavaScript embedding * Import post attachments directly into the Media Library (and CDN) Improve the user experience for your readers without having to change WordPress, your theme, your plugins or how you produce your content. == Installation == 1. Deactivate and delete any other caching plugin you may be using. Make sure wp-content/ and wp-content/uploads/ (temporarily) has 777 permissions before proceeding, e.g.: `# chmod 777 /var/www/vhosts/domain.com/httpdocs/wp-content/` using your web hosting control panel or your SSH account. 1. Login as an administrator to your WordPress Admin account. Using the "Add New" menu option under the "Plugins" section of the navigation, you can either search for: w3 total cache or if you've downloaded the plugin already, click the "Upload" link, find the .zip file you download and then click "Install Now". Or you can unzip and FTP upload the plugin to your plugins directory (wp-content/plugins/). In either case, when done wp-content/plugins/wordpress-speed/ should exist. 1. Locate and activate the plugin on the "Plugins" page. Page caching will **automatically be running** in basic mode. Set the permissions of wp-content and wp-content/uploads back to 755, e.g.: `# chmod 755 /var/www/vhosts/domain.com/httpdocs/wp-content/`. 1. Now click the "Settings" link to proceed to the "General" tab and select your caching methods for page, database and minify. In most cases, "disk enhanced" mode for page cache, "disk" mode for minify and "disk" mode for database caching are "good" settings. 1. *Recommended:* On the "Minify Settings" tab, all of the recommended settings are preset. Use the help button to simplify discovery of your CSS and JS files and groups. Pay close attention to the method and location of your JS group embeddings. See the plugin's FAQ for more information on usage. 1. *Recommended:* On the "Browser Cache" tab, HTTP compression is enabled by default. Make sure to enable other options to suit your goals. 1. *Recommended:* If you already have a content delivery network (CDN) provider, proceed to the "Content Delivery Network" tab and populate the fields and set your preferences. If you do not use the Media Library, you will need to import your images etc into the default locations. Use the Media Library Import Tool on the "Content Delivery Network" tab to perform this task. If you do not have a CDN provider, you can still improve your site's performance using the "Self-hosted" method. On your own server, create a subdomain and matching DNS Zone record; e.g. static.domain.com and configure FTP options on the "Content Delivery Network" tab accordingly. Be sure to FTP upload the appropriate files, using the available upload buttons. 1. *Recommended:* On the "Browser Cache" tab, HTTP compression is enabled by default. Make sure to enable other options to suit your goals. 1. *Optional:* On the "Database Cache" tab, the recommended settings are preset. If using a shared hosting account use the "disk" method with caution, the response time of the disk may not be fast enough, so this option is disabled by default. Try object caching instead for shared hosting. 1. *Optional:* On the "Object Cache" tab, all of the recommended settings are preset. If using a shared hosting account use the "disk" method with caution, the response time of the disk may not be fast enough, so this option is disabled by default. Test this option with and without database cache to ensure that it provides a performance increase. 1. *Optional:* On the "User Agent Groups" tab, specify any user agents, like mobile phones if a mobile theme is used. == Who do I thank for all of this? == We would like to give credit to the AMAZING working that the W3 Total Cache team did - without it, the evolution of WordPress Speed wouldn't have been possible. Here are some of the key players that everyone should thank! * [Steve Souders](http://stevesouders.com/) * [Steve Clay](http://mrclay.org/) * [Ryan Grove](http://wonko.com/) * [Nicholas Zakas](http://www.nczonline.net/blog/2009/06/23/loading-javascript-without-blocking/) * [Ryan Dean](http://rtdean.livejournal.com/) * [Andrei Zmievski](http://gravitonic.com/) * George Schlossnagle * Daniel Cowgill * [Rasmus Lerdorf](http://toys.lerdorf.com/) * [Gopal Vijayaraghavan](http://t3.dotgnu.info/) * [Bart Vanbraban](http://eaccelerator.net/) * [mOo](http://xcache.lighttpd.net/) Please reach out to all of these people and support their projects!