Speed up your blog with Easy Cache, bullet-proof and easy-to-use website caching mechanism for WordPress that just works.
|Author:||Budiony Damyanov (profile at wordpress.org)|
|WordPress version required:||3.2.0|
|WordPress version tested:||4.2.2|
|Added to WordPress repository:||21-02-2014|
Warning! This plugin has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.
|Total downloads:||3 228|
Click to start download
Easy cache takes a real-time snapshot of every Page, Post, Category, Link, etc. These snapshots are then stored (cached) into folder of your choice, so they can be referenced and served to the visitor later, in order to save database processing time that has been slowing your website down.
The Easy cache plugin uses configuration options that you select from the Administration panel. Search for
Easy cache in your
Easy cache excludes administrative or WP system login pages from caching (i.e. it works only on public part of your blog). Only NOT logged-in users (which are the most) can benefit from caching mechanism when they visit the public part of your website. Password-protected pages or posts are excluded from caching too.
There is an automatic cache expiration system, which runs through WordPress® behind-the-scene, according to your
Cached file expires after setting, also various cache and server load statistics are available for precise tracking of what is going on.
The Easy cache plugin has been tested with various permalink settings, various pagination plugins like
WP Pagenavi and
WPML WordPress Multilingual Plugin, also with
WordPress® Jetpack mobile theme, with variuos custom post types, custom queries, custom pages outside WordPress® installation directory and a number of widely used plugins, however if you experience troubles, post your issue on the plugin's forum.
Why WordPress® pages need to be cached?
Briefly explanation, according
Wikipedia, in computer science, a
cache (pronounced /kash/) is a collection of data, which duplicates original values, stored elsewhere or computed earlier, where the original data is expensive to fetch (owing to longer access time) or to compute, compared to the cost of reading the cache. In other words, a cache is a temporary storage area, where frequently accessed data can be stored for rapid access. Once the data is stored in the cache, it can be used in the future by accessing the cached copy rather than re-fetching or recomputing the original data.
WordPress® is a database-driven publishing platform. That means you have all these great tools on the back-end of your site to work with, but it also means that every time a Post/Page/Category is accessed on your site, dozens of connections to the database have to be made and literally thousands of PHP routines run in harmony behind-the-scenes to make everything dance. The problem is, for every request, that a browser sends to your site, all of these routines and connections have to be made (yes, every single time). This can be very system resource consuming, which actually leads to slowdowns of your website.
In most cases, the big part of the content on your site remains unchanged for at least a couple of minutes, or maybe an hour at a time.
If you’ve been using WordPress® for period of time, you’ve probably noticed that (on average) your site does not
load as fast as it was by initial installation. All of the above is the reason for this.
Where are the cache files stored on my server?
The cache files are stored in a sub-folder of path your choice, by default this is sub-folder, named
< cached > inside the default WordPress ‘uploads’ folder. This folder needs to remain writable and accessible (i.e. with permissions set to 0755 or higher).
< cached > folder Easy cache stores all snapshots as files with names
<SHA1>.cache (file name is constructed as an
SHA1 hash of the requested URL).
You can remove all cached files from the Administration panel in order to revoke caching mechanism to rebuild the cache upon next post/page access again.
Settings -› Easy cache -› Cache folder path for further details.
Is there a need to modify my current theme in order caching to work correctly?
Maybe. Make sure the call to
wp_footer(); function is at the very bottom in your theme’s
footer.php file, right before closing
< /body> tag. Otherwise contents after
wp_footer(); may be not included in generated cache file (i.e. these contents will be most probably scripts or style-sheets, so it is important to check this out).
Will comments or any other dynamic parts of my blog update immediately?
It depends on your configuration of Easy cache. There is an automatic cache expiration system, which runs through WordPress® behind-the-scene, according to your Cached file expires setting (see:
Settings -› Easy cache -› Cached file expires after and
Settings -› Easy cache -› Rebuild cached file on page/post/comment update). The default value of 30 minutes is suitable for most cases. If you don’t update your site too often, you could set this to 240 minutes (which is 4 hours) or longer. The longer the cache expiration time is, the greater your performance gain. Alternatively, the shorter the expiration time, the fresher everything will remain on your site, but at cost of slowdowns.
Can I exclude given pages or posts from being cached?
Yes, navigate to
Settings -› Easy cache -› Exclude pages/posts from caching and select desired items. You can also include/exclude all search queries in your blog from being cached, it will be useful if you have huge amount of traffic, generated by searches to disable search queries exclusion.
Settings -› Easy cache -› Exclude search queries from caching: for further details.
How to verify that Easy cache is working?
First of all, make sure you are NOT logged-in. Then navigate to your site like a normal visitor would. Right-click on any page (choose View Page Source), then scroll to the very bottom of the document. At the bottom, you’ll find comments that show Easy cache statistics and information. You should also notice that page-to-page navigation is very fast, compared to what you experienced prior to installing Easy cache.
Is there any further optimization of saved cache file for speed improvement?
Yes, cached file can be minified (cleaned) and then saved to disk, in typical scenario this process will reduce cache file size between 6 and 12%, which also means, that your visitors will open pages 6 to 12% faster (with given equal conditions).
Settings -› Easy cache -› Minify saved cache file for details and
Settings -› Easy cache -› Minify and combine CSS files.
Why I need to minify my CSS files and how the CSS minification and combination process works?
Insert absolute URL (valid URL according RFC 2396) of CSS files in sequence of their appearance in non-cached page for minification and combination. This process will reduce the number and size of HTTP requests to your server. The CSS files will be merged as single cached CSS resource file, named_css.min.css and saved in your current theme’s folder.
This file will be included in every cached file, old links will be removed.
Make sure that any URL inside the original CSS code is abosulte, not relative (otherwise you will have missing backgrounds). Also make sure you type the URL of files you want to combine and minify exactly as it is in your original page / post (for example some stylesheets links may have dynamic content attached to them, like: http://www.example.com/color.php?ver=1.2), otherwise minification and combination will not work correctly. If you modify the original CSS files, remember to save settings here in order to re-generate cached CSS resource file.
Why there is separate cache expire setting for search results?
The separate setting is related to caching of search quesries. Sometimes we want to have fresher information in search results (although the results will link to the cached pages/posts), so setting this value lower than the global cache expire time will give the desired outcome. The value is again in minutes.
Settings -› Easy cache -› Search queries cache expire after for details
What is the purpose of Statistics section?
It gives you technical information about the caching mechanism and server load. This is useful if you want to track more precisely what’s going on your server and on your website.
Is there any PHP/Web server requirements in order this plugin to work?
Only one. The minimum requirement is that the version of PHP is 5.2.4 or later with ‘allow_url_fopen’ setting set to ‘On’ (this is because of the CSS minification and combination).
No other special requirement about the structure of your permalinks, .htaccess file, memory limits or free space on your server. Of course the more, the better for the latter two.
I have a mobile theme from WordPress® Jetpack module, should I do something in order caching to work?
The plugin detects if you have installed the Jetpack from WordPress® mobile theme and it detects if your website is visited by a mobile device. However it is highly recommended to skip caching for mobile pages/posts, otherwise your website visitors may see a mix of the mobile pages/posts and desktop pages/posts. Skipping the caching mechanism for mobile version of your website is necessary, because the Jetpack module by WordPress.com provides his own caching procedure.
Why should I donate to this plugin?
Well, the main purpose of caching mechanism is to save your visitors time and bandwidth, which transfers of saving your money. By reducing the load times you actually economize your resources and provide your visitors better experience, so I won’t mind if you buy me a beer if you are happy about that. Check the ‘Donate’ button for more info.
-Small bug fixes in administration panel when displaying excluded posts / pages. Now future posts are also visible.
-Improved handling of password-protected posts/pages
-Improved HTML page compression
-Added separate cache expire time for cached search results
-Added option to delete specific cache file (associated with given page/post)
-Added Spanish translation
-French translation update
-HTML and CSS compression improvement
-The plugin no longer require PHP version greater than 5.3.6, the required minimum PHP version now is 5.2.4
-Added support of Jetpack mobile theme module by WordPress.com
-Better memory management
-Minification and combination of CSS files is improved.
-Compatibility fixes and translation updates.
-Added CSS files minification and combination.