Come usare WP Rocket sul tuo sito di e-commerce

WP Rocket è compatibile con i plugin di e-commerce per WordPress come  WooCommerce, Easy Digital Downloads etc.

Tuttavia, ci sono alcune pagine che non dovrebbero essere incluse nella cache. Questo è dovuto al fatto che i dati specifici dell'utente, come i prodotti nel loro carrello, non dovrebbero essere messi in cache.

A partire dalla versione 2.4 di WP Rocket, le pagine relative al carrello, al pagamento e ai dati del compratore (la tipica pagina "Il mio conto"), verranno automaticamente escluse dalla cache nel caso tu stia usando WooCommerce, Easy Digital Download, iThemes Exchange, Jigoshop & WP-Shop.

Se stai ancora usando una versione di WP Rocket precedente alla 2.4, dovrai escludere manualmente dalla cache le pagine "Carrello" e "Pagamento" dalla cache. Puoi farlo nella sezione "Opzioni Avanzate" del pannello di controllo di WP Rocket. Nel campo chiamato "Escludi le seguenti pagine dalla cache" devi inserire le URL del tuo sito web per tali pagine.

Per esempio, se la tua pagina Carrello è posizionata nel modo seguente: http://www.yourwebsite.com/carrello/

Puoi inserire nel campo di esclusione sia /carrello/ che http://www.yourwebsite.com/cart/  

Introduci ogni pagina in una linea separata del campo, come nell'esempio:

Se hai bisogno anche di escludere dalla cache anche delle pagine-figlie, puoi farlo usando il seguente formato: 

/carrello/(.*)

In questo esempio, tutte le pagine figlie della pagina carrello verranno escluse.

Widget Prodotti nel Carrello

Se hai un widget per mostrare il numero di prodotti nel carrello dei tuoi utenti e questo non funziona correttamente con la cache, è probabile che stia usando il PHP per aggiornare il totale prodotti: in questo caso la pagina dovrà essere esclusa sulla base di un cookie (vedi sotto).
Alcuni widget relativi al carrello usano l'AJAX e quindi funzioneranno correttamente con la cache, senza necessità di configurare nulla su WP Rocket. Per esempio, a partire dalla versione di WooCommerce 2.0, il widget standard per il carrello è in AJAX e quindi compatibile con la cache.

A questo proposito puoi vedere la  documentazione di WooCommerce per aggiungere al tuo tema un totale carrello in Ajax, se ancora non ne hai uno.

Anche sul nostro blog c'è un articolo relativo a questo tema:
http://blog.wp-rocket.me/using-woocommerce-dynamic-cart-wp-rocket/

Escludere le pagine in base ai Cookies

Le pagine possono essere escluse dalla cache anche in base alla presenza di un cookie.

Per esempio, se stai usando WooCommerce con un widget carrello programmato in PHP, puoi andare sulle Opzioni Avanzate di WP Rocket e inserire nel campo "Non inserire nella cache le pagine che usano i seguenti cookies" la voce seguente:  woocommerce_items_in_cart

Se invece stai usando WP-Ecommerce, devi aggiungere la voce:  wpsc_customer_cookie