Yep, that's a bug in the freeoptions.php shipping module. See this Zen Cart PR for the changes: https://github.com/zencart/zencart/pull/7024
Note: Your site has already been updated with those changes.
This is the error message that I am receiving now and I now only have three shipping options after the fix that was done and they are:
Australia Post
Australia Post International
Flat Rate
Error message:
Fatal error: Uncaught Error: Class "ZenShipping" not found in /home/xxxsx/outdoorking.com.au/includes/modules/shipping/freeoptions.php:9 Stack trace: #0 /home/xxxx/outdoorking.com.au/xxxx/modules.php(184): include() #1 /home/xxxxx/outdoorking.com.au/admin/index.php(11): require('/home/xxxx') #2 {main} thrown in /home/xxxx/outdoorking.com.au/includes/modules/shipping/freeoptions.php on line 9
It seems that when any changes are made to modules on the site I get more errors.
Outdoorking
www.outdoorking.com.au
The bug fix is for ZC v2.1.0, File in v1.5.8a is a little bit different.
Try to replace your line 9 of '../includes/modules/shipping/freeoptions.php':
By this:Code:class freeoptions extends ZenShipping
Code:class freeoptions extends base
Latest update with the free shiping module.
Part number 32099-2326 was ordered online which only has a weight of 0.1kg and it defaulted to free freight when it should be $14.50.
Any idears to why this would be happening because other orders with weight over 1.00kg to 3.00kg are showing the free freight oprion ok because they are under the 3kg limit.
This part is only $10.00 and he only ordered two which is $20.00 so not being over $150.00 it should not default to free freight unless I have incorrecrtly done the setting in admin wrong.
If I set the following:Total >=
Free Shipping when Total >= 150.00
Will that mean every order over 150.00 will get free freight?
Last edited by Bruce1952; 11 Mar 2025 at 11:23 AM.
Outdoorking
www.outdoorking.com.au
You've got the freeoptions configured to provide free shipping when the weight is >= '' (i.e. 0) and <= 3 (kg) or if the order's subtotal is <= $150.00.
That's why the free-shipping option is being shown. That, in combination with setting the Shipping (ot_shipping) Order Total to provide free shipping for orders over $150, says that you're offering free shipping on each and every order.
The logic of this module is not obvious.
There are 3 criteria on which you can set a condition for free shipping:
Total (price)
Weight
Item (number of items)
For each one you can set a Min and Max limit.
When you set both a Min and Max limit, logic is based on 'AND'. Meaning to have free shipping, product must be over Min limit AND under Max limit.
But if you set conditions on 2 different criteria, logic is based on 'OR'. For example, if condition on total price OR condition on weight is fulfilled (only one is enough), then you have free shipping.
If you want free shipping if weight is under 3 AND total over 150, well this module can't do it as it is.
Bookmarks