Got stuck somewhere? Is something not working as you’d expect? Here are some common challenges that are occurring and what you can do about it.
My shipping rates are not showing up
Shipping cache & debug mode
WooCommerce caches the shipping rates automatically, the first thing I’d recommend to check if this isn’t the case. The cache can either be busted by changing a address field like the zipcode to a new value, or change the (quantity) contents of the cart. The other alternative is to enable the ‘Shipping Debug Mode‘ to prevent any caching from being done.
Conflict in conditions
If a shipping rate is not showing up when you are expecting it to, most of the time it is due to a conflict in the conditions. Please check your conditions and ensure everything is setup correctly and you can check the help icon to see how a condition matches.
When having a hard time figuring out what is going on, my best recommendation is to start simple. Make sure a shipping rate is showing up by having the simplest setup, using a single condition such as;
- Subtotal – greater or equal – 0
This ensures the rate will always appear (if it doesn’t, check the debug mode above and any possible other plugins/customizations interfering). Once the rate is appearing, add your desired conditions 1 by 1 and test in between (with debug mode enabled) to see if/when a rate stops appearing and the condition that is conflicting.
A couple common conflicts with conditions are:
Country / State
The ‘country’ and ‘state’ conditions both require the user to have a given location. If you setup multiple of these conditions in one condition group you’re requiring the system to only match when the user is in two places at one, which of course isn’t possible.
Read more on how to setup Country based shipping rates with the Advanced Shipping plugin.
Category
The ‘category’ condition requires all products in the cart to have the given category. If there’s one product in the cart that doesn’t have the category, the condition won’t match and thus also not the condition group and the shipping rate.
This also goes if you use two category conditions, it will require all products in the cart to have both those categories.
You could use the ‘contains shipping class’ condition to require at least one (or more) products to have a given shipping class. I also have a ‘contains category’ extension script available if needed (feel free to reach out to me).
Shipping Zone Mis-Match
If you’re using the WooCommerce Shipping Zones the customer needs match with the zones the Advanced Shipping rate is configured within. To see which zone is matching you can use the aforementioned shipping debug mode which will display a notice on top of the cart/checkout.
Important to know is that WooCommerce only uses with the first zone the customer matches with. So if create two zones with ‘United states’ selected as the country, it will only match with one (the first).
When clicking the ‘+’ or ‘Add or group’ button, nothing is happening
If you’re trying to click the ‘+’ button to add a new condition or the ‘Add or group’ button to add a condition group, and nothing is happening, it is a indication of a JavaScript error. When a JavaScript error is occurring it can hold the execution of the other code on the script, causing the buttons not to work.
The cause of this can lay with any plugin or your theme, so it is important to figure out which one. About half the time it is easy to figure this out, the other half it takes more effort to do so.
Method 1: Trying to directly find the cause
To find this out, you’d want to open the console of your browser. This is explained here on this page by WordPress: https://codex.wordpress.org/Using_Your_Browser_to_Diagnose_JavaScript_Errors
Follow the steps 1 through 3 to figure out if there’s an error and more importantly, which script is causing this error. With a bit of luck it is showing a script name which is causing this error, and you can track that down to a specific plugin (sometimes prefixes are used for script names, so you can track that down with the prefix / plugin name).
Method 2: The process of elimination
The first method doesn’t guarantee results, but this method (almost always) does. What you’d want to do here is try disabling plugins to figure out which one may be causing issues. If possible, its advisable to do this on a test / staging site. First I’d advise to disable all other plugins and check if you can add a new condition now. If that works its at least clear there is indeed a error in another plugin and now we need to figure out which one it is (note, in rare cases it could also be more then one plugin causing issues).
This can be done by activating the plugins one by one and testing in between whether the add-condition keeps working. Tip: you can also do this quicker by activating the first half of your plugins, is it working: the issues lies in the second half, not working: the issue lies in the first half. That way you can eliminate multiple plugins at once and it can be repeated.
Still stuck or having questions?
If you still have questions / need help troubleshooting the plugin, feel free to reach out to me: http://jeroensormani.com/woocommerce-advanced-shipping/support/