A few months ago I released block cache alter which did nothing more than adding a fieldset on the block configuration page enabling you to change the cache setting of a block. A small first step making block cache rock a bit more in Drupal 6. I wasn't sure how to take it a step further, but I'm happy I'm not alone on this case.
With a tremendous patch submitted by batbug2 (see #354080), the module got much smarter. You are now able to set expire values for each block or have it refreshed on certain actions (nodeapi, comment and user). In fact, a lot of the patch by batbug came from the excellent Blockcache module which never got ported to D6. After some thinking I decided to add the patch into the module because in the end, they really have some differences:
- You need to apply a patch to the block module if you want to have all possibilities. 2 patches are available, take a look at the documentation that comes with the download which one suits you best. Note: you can still simply run without a patch, you simply won't have that much control when the cache is cleared.
- If you choose to refresh on say a node action (insert, update, delete), you can also specify which node type.
- 206 passes, 0 fails, and 0 exceptions. That's right, it's fully tested, if that ain't nice ..
If you're interested, please help out testing. The development release is available at http://drupal.org/node/395422. The sooner I get feedback - good or bad, post comments and follow up patches at #354080 - the faster I can release a new version and start writing patches to fix block caching for good in D7!