Your Cart is Empty
I love Cart66 for its elegant simplicity and the fact that it just works. Cart66 brings usable eCommerce to WordPress. But recently, I ran into a recurring problem on a client’s web site that was breaking the checkout process.
A customer would add a product to cart, but when they went to checkout, Cart66 would return the error “Your Cart is Empty.” After a bit of research, I found the answer on the WordPress Support Forums.
Cart66 is Incompatible with Site Caches like W3 Total Cache
Now, I’m a pretty easy guy to get along with, and it takes a lot for me not to be able to get along with someone. But from time to time I’ve run into a situations where two people I genuinely like can’t stand each other. That has always mystified me. I like you both, why don’t you like each other. It turns out, that’s a bit like what was happening on this site. Two of my favorite plugins, Cart66 and W3 Total Cache, just can’t get along.
According to Cart66’s developer, “If you have a caching plugin running you will run into all sorts of odd problems. So do not run a caching plugin, or at least, don’t cache your shopping cart pages.” The issue seems to happen because the caching plugin is caching the view cart page of a previous visitor. So that when the next visitor tries to check out, the previous visitor’s view cart page is shown to them. This, of course, just won’t work.
But, thankfully, the solution is as simple. Just turn off caching or set your cache not to work on shopping cart pages.