Hi,
I am using the Modules > Shipping > Allow Free shipping for orders over $100 but I would like to exclude a few certain products from this offer, is that possible?
Brad.
Printable View
Hi,
I am using the Modules > Shipping > Allow Free shipping for orders over $100 but I would like to exclude a few certain products from this offer, is that possible?
Brad.
You would have to customize the ot_shipping.php to test for the presence of those products and know not to include their value in the amount being tested ... or exclude the whole order because they are present ...
That makes sense, are there any mods out there that do this already? Or is there anything similair i can work from/alter?
Thanks,
Brad.
Well ... you just need to grab all the products_id that are in the current cart and then test if they are in your "list" of products ... and if so do "something" either not allow free shipping or not use their values for free shipping or what have you ...
Another method, if you want to say:
if any products are not allowed to let Free shipping happen is to add a new field/flag to the products table ... then you can just test if any product in the cart has that flag or not set ... if set, and 1 means no free shipping, then you can stop the free shipping from happening ...
I am not a 100% sure the full extent of where you want to go with this ...
Ajeh, for starters, thanks for all your help. this is my first post, but i've had many questions answered by reading these forums. :clap: anyway, could you help me pick up where this thread left off? i'm in a similar situation, looking to exclude certain heavy items from our current free shipping +$300 setting? i'm vaguely familiar with editing php, as well as the tables you refer to - but i'd need a bit of specifics. i'm thinking your second option of adding a product field and using it to flag the affected items would be best. after adding xyz field to the products table, could you (or someone) point me in the right direction for "telling" the free shipping to look for it and exclude? thanks!
If you are using the Free Shipping Options freeoptions shipping module, you could customize the code to allow setting of 2 conditions, one being total >= 300 and the other being weight <= XXXX
This can be done by altering the final tests on the module from OR to AND connectors ...
PHP Code:
// final check for display of Free Options
if ($this->ck_freeoptions_total or $this->ck_freeoptions_weight or $this->ck_freeoptions_items) {
$this->enabled = true;
} else {
$this->enabled = false;
}
Did you work out how to write to code to have the free shipping options to check if the product is flag i.e. eligible for free shipping?
Because we would like to have our free shipping options to only offer free shipping if there is 25 of a certain product in the shopping cart. At the moment we have the amount set and the number of items set and changed the final check to AND instead of OR. This works ok but we would really like it just to be check for the certain product. I am sure I can easily workout how to add the extra field to the product table.
We want to offer the free shipping to all orders as long as it have the 25 or more of the certain product. So it can have other items too!
Yes we need to Do that same thing with flagging an item so that it can't qualify for the free shipping. We already use the if over 250 is free but if the weight is over 50Lbs its not so now we want to add the flag item part so we can make some of our items not qualified for free shipping even if they are over 250.00 and not over 50.00
Thanks
wow I am in the same boat. I am looking to exclude certain heavy products from free shipping. We would like to be able to offer the Free Shipping on most items when the order total is over $100 unless there is a heavy product included. I have changed the OR to AND in the final check and this works OK(except when the order is big and the weight of all the small products exceeds our heavy limit), But we would have much more success just being able to check a box that will cause the item to always be excluded from free shipping no matter what, and just being able to set orders over $100 ship for free.
So has anybody been successful here? I've been racking my brain over this one but since I'm not really a php programmer I am completely at a loss. Any help would be appreciated!!
skylab001- unfortunately i've been unable to accomplish this.. to be honest, it was put on the back burner for awhile - but i'm now looking back into this..Quote:
Another method, if you want to say: if any products are not allowed to let Free shipping happen is to add a new field/flag to the products table ... then you can just test if any product in the cart has that flag or not set ... if set, and 1 means no free shipping, then you can stop the free shipping from happening ...
ajeh - i'm looking to do what you referenced in your above reply to emtecmedia..
i am familiar with how to add the field in the products table.. this would (i think) allow the customer to still receive free shipping for their "light" products, and only charge shipping for those especially heavy items which were flagged.
would you (or someone) be able to assist me with the php code to perform the check for this flag? or at least hold my hand a little to get me started? i hate asking you outright to generate the code for me - but i truly wouldn't know where to begin.
ps - just made a donation.. not that i'm trying to persuade you or anything. :P