As some of you may know, I’m using WooCommerce, a free eCommerce solution by Woo Themes, to power both my record label’s and my online guitar learning platform’s web shops.
I’ve used other solutions like MarketPress before, but I think WooCommerce is by far the most beautiful, advanced and user friendly eCommerce solution for WordPress out there.
To keep the shops running smooth, I’m hosting all my sites on a VPS (Virtual private server) and using W3 Total Cache plugin as well to cache the pages and keep the loading speeds fast enough as well as reducing the strain on the server.
When I was first starting the Baros Records shop, I noticed that running both plugins (WooCommerce and W3 Total Cache) I couldn’t finish the checkout when using a mobile device, The “Proceed to checkout” button was simply greyed out, but it worked like a charm on my laptop.
To solve this issue I searched long time online until I finally stumbled upon this article which solved my problem instantly.
As soon as I added /shop* to Never cache the following pages: (in the menu Page Cache), the problem was gone!
On the Woocommerce site it says this regarding configuring W3 to work with it:
“If using caching plugins (such as WP Super Cache or W3 Total Cache), make sure you exclude the following pages from the cache through their respective settings panels:
These pages need to stay dynamic since they display information specific to the current customer.”
And at the end says this:
“Note, WC 1.4.2+ sets the DONOTCACHEPAGE, constant which means you can skip this step”
I’m currently setting up the same and wonder if I need to do this exclusion step.
Hmm, interesting. So in theory it should take care of those pages, but I found in my case it simply did not work on mobile devices, so there must’ve been some kind of conflict between these two plugins. I’m not an expert on these matters, sorry!
Thanks for your help. The issue I had was with the Cart page ie when I remove products, the products don’t disappear until I manually refresh the page. By excluding the Cart page I was able to fix the issue.