Примерно так:
define( 'DYNAMIC_CACHE_TEST_TAG', '' ); // Change this to a secret placeholder tag
if ( DYNAMIC_CACHE_TEST_TAG != '' ) {
function dynamic_cache_test_safety( $safety ) {
return 1;
}
add_cacheaction( 'wpsc_cachedata_safety', 'dynamic_cache_test_safety' );
function dynamic_cache_test_filter( &$cachedata) {
return str_replace( DYNAMIC_CACHE_TEST_TAG, "<!-- Hello world at " . date( 'H:i:s' ) . " -->", $cachedata );
}
add_cacheaction( 'wpsc_cachedata', 'dynamic_cache_test_filter' );
function dynamic_cache_test_template_tag() {
echo DYNAMIC_CACHE_TEST_TAG; // This is the template tag
}
function dynamic_cache_test_init() {
add_action( 'wp_footer', 'dynamic_cache_test_template_tag' );
}
add_cacheaction( 'add_cacheaction', 'dynamic_cache_test_init' );
}
Задаете свой DYNAMIC_CACHE_TEST_TAG, в нужном месте шаблона его вставляете, соответственно, плагин закеширует страницу вместе с значением константы DYNAMIC_CACHE_TEST_TAG, а потом с помощью хука wpsc_cachedata делаете замену на вывод Вашей функции.
Больше примеров и подробностей
тут.
P.S. И там вроде надо было с галочками в настройках плагина поиграться, толи поздняя инициализация или как-то так. Там вроде на странице настроек плагина написано про это.