O gancho apropriado para o W3TC define ou desativa dinamicamente o cache total w3 [closed]

4

Eu tenho um site que usa um plug-in de carrinho de compras (Shopp), um plug-in que eu escrevi e o W3 Total Cache.

No meu plug-in, gostaria de ter certeza de que o W3 Total Cache não veicule nenhuma página em cache se o usuário tiver algum item em seu carrinho. No entanto, parece que não consigo encontrar o gancho adequado para definir as constantes Isso desativará o armazenamento em cache do W3 Total Cache. Isto é o que eu tenho no topo do meu arquivo de plugin (a função shopp_init é executada durante wordpress init ):

// do not cache anything if items are in cart
add_action('shopp_init', function(){
    if (shopp_cart_items_count() > 0)
    {
        define('DONOTCACHEDB', true);
        define('DONOTCACHEPAGE', true);
        define('DONOTCACHEOBJECT', true);
    }
});

Parece que se a constante DONOTCACHEPAGE for detectada uma vez para uma página, ela não será verificada novamente. Então, se eu tiver algum item no meu carrinho a qualquer momento, ele nunca armazenará nada em cache. Da mesma forma, se meu carrinho estiver vazio uma vez, sempre permitirá que todas as páginas sejam armazenadas em cache.

Como posso dinamicamente desativar o cache total do w3?

    
por jessica 24.09.2012 / 20:59

1 resposta

-2

Você pode tentar usar essa função de tipo:

add_action( 'wp_print_scripts', 'my_deregister_javascript', 100 );
    if ( !is_page('Events') ) { 
        wp_deregister_script( 'wpng-calendar' ); 
        wp_deregister_script( 'date-js' ); 
        wp_deregister_script( 'thickbox-js' ); 
        wp_deregister_script( 'jquery-js' ); 
        wp_deregister_script( 'wiky-js' ); 
     }
 }

Encontrado em este site

Você terá que modificar os nandlers de acordo com as suas necessidades, achei os manipuladores do W3TC como:

TotalCacheAdmin.php (8 hits)

Line 614:         wp_enqueue_style('w3tc-options');
Line 615:         wp_enqueue_style('w3tc-lightbox');
Line 624:         wp_enqueue_script('w3tc-metadata');
Line 625:         wp_enqueue_script('w3tc-options');
Line 626:         wp_enqueue_script('w3tc-lightbox');
Line 633:         wp_enqueue_script('jquery-ui-sortable');
Line 637:         wp_enqueue_script('jquery-ui-dialog');
Line 642:         wp_enqueue_script('w3tc-options');
    
por cobcena 09.04.2013 / 11:24