Appearance
Cache
The cache is a temporary storage of data that is used to speed up the loading of the website. It is a good thing to have, but it can also create a problem. There are various cache plugins available for WordPress. Below is the list of few common cache plugins:
- W3 Total Cache
- WP Super Cache
- WP Rocket
- WP Fastest Cache
- LsCache
- Breeze Cache
- Auto Optimize
- WP-Optimize
- Site Ground Optimizer
- Comet Cache
- Hyper Cache
The above mentioned list doesn't include all cache plugins. There are even more cache plugins which can be found here. If you are using any of the above cache plugins, then you might face an issue with the cart. The cart might not work properly or the cart will not show the correct number of items in the cart. This is because the cache plugin is caching the cart data and not updating it when the cart is updated.
Fixing common JavaScript issue (Front end)
Cache plugins can also cause a javaScript issue. The nature of issue may vary depending upon the cache plugin that you are using and the setting that you have selected in a cache plugin. Below are few common cache issue related to javaScript:
- Item added to cart not being displayed in the cart.
- Item removed from cart not being removed from the cart.
- Wrong number of items in the cart.
- Cart not showing the correct total.
- Cart quantity input not working.
- Cart is empty even though there are items in the cart.
- It might also break the site functionality and show a JavaScript error in the console.
If you are experiencing any of the above issue, then the solution is to check the cache plugin settings page. All cache plugin have different settings. In most case, you need to find a page to tweak the javaScript cache setting. Below are the few common trobleshooting steps:
- Find a option called exclude URL or exlcude javaScript. Then, exclude the Go Cart javaScript file from the cache.
https://yourwebsite.com/wp-content/plugins/go-cart/public/assets/build/js/public.min.js
https://yourwebsite.com/wp-content/plugins/go-cart/public/assets/build/js/public.min.js
Note: Please make sure to replace the yourwebsite.com
with your actual website URL.
- Disable defer & async javaScript option.
- Disable option to combine javaScript files.
TIP
Once you tweak and save a cache plugin setting, you need to flush/purge the plugin cache to see the changes.
Fixing cache issue (Back end)
If you are facing an issue with the Go Cart plugin setting page while saving the settings, then this is likely due to the REST API
cache.
Go Cart setting page is built using Vue JS and REST API
. The REST API
is a data fetching mechanism. It fetches the data from the database and displays it on the setting page. If you have enabled the REST API
cache then the API endpoint will be cached and it will not fetch the latest data from the database.
If you are having a similar issue, then the the solution is to disable REST API cache from the cache plugin's setting page. Every cache plugin will have different settings but this is what it looks like in LiteSpeed cache plugin:
No luck? Please contact the author of the cache plugin that you are using or your hosting provider. They might be able to help you with the issue.
CDN (Content Delivery Network)
If you are using a CDN like Cloudflare, you might also need to clear it's cache once you make a change in the cache plugin setting.
Cloudflare also have a option called Rocket Loader. It is a javaScript optimization tool. It might also cause a javaScript issue in some cases.
If you are using Cloudflare, follow the steps below to disable the Rocker Loader:
- Login to your Cloudflare account.
- Click on the website that you want to disable the Rocker Loader.
- Click on the Speed tab.
- Click on optimization.
- Scroll down & uncheck the Rocket Loader option.
WARNING
Cloudflare Rocket Loader improves the paint time for pages which include JavaScript. You should only disable it if you are experiencing a javaScript issue.
Hence, please make sure to follow the fixing common javaScript issue steps before disabling the Rocker Loader as it might not be the cause of the issue.
Additionally, you may also contact your hosting provider and describe the nature of the issue that you are facing on your website. They might be able to help you with the issue.