Over the last month or so I have taken time to investigate what was happening with W3TC cache preload for version 0.9.2.4. I have documented my work, but there is far too much to include here, so please look at http://www.wmiles.com/2012/03/w3tc-cache-preload for a full description of my results.
I hope some of this will be helpful. W3TC is a useful plugin.
In a nutshell, I discovered that W3TC Total Cache release version 0.9.2.4 has four faults in the cache preload function that prevent successful operation of this feature. My post provides code corrections for these faults. I also show a fix for another fault with URL redirection for cache prime requests that can lead to a 'too many redirects' error.
I have also proposed new features to ensure that pages are primed only when required; I have included an enhancement for visible monitoring and tracing cache preload activities; and I show how to enable different cache retention times depending on the page URL.
The fixes that I propose apply to both basic mode and enhanced mode disk caching. I have tested basic mode disk caching, but I have only performed a cursory validation that the fixes will work for enhanced mode caching. As with any suggestions, I would hope that this work be reviewed by those who develop W3TC.
Briefly, my document has 4 pages.
Page 1. Describes the known faults or bugs in W3TC Total Cache version 0.9.2.4 preload function. See http://www.wmiles.com/2012/03/w3tc-cache-preload.
Page 2. Describes a feature enhancement to enable setting of specific page cache expiry times. See http://www.wmiles.com/2012/03/w3tc-cache-preload/2.
Page 3. Describes a feature enhancement to allow administrator control and monitoring of prime activities. See http://www.wmiles.com/2012/03/w3tc-cache-preload/3.
Page 4. Describes a feature enhancement to prime only uncached and valid pages. This improves cache prime performance. See http://www.wmiles.com/2012/03/w3tc-cache-preload/4.
Again, I hope some of this will be helpful. And, I am pleased to contribute to this plugin. :)