tdr170 Posted July 12, 2013 Share Posted July 12, 2013 Prestashop 1.4.7, Standard theme. Here is the issue, I have a product that we want to offer free shipping on. (with voucher) I have created the voucher and set to the category and set price to only be able to be used with that product, great. Everything works as I expected the only issue I have is that after entering the code all shipping options change to free. Most of the options would be OK but Three day select from UPS is much higher then the others so I can't have them select that option. Is there a way to set free shipping to only Parcel post. I have included a note that the Free Shipping only applies to Parcel post but we all know how people are. Any help is much appreciated. Thanks Link to comment Share on other sites More sharing options...
Krystian Podemski Posted July 12, 2013 Share Posted July 12, 2013 Maybe... disable specify carrier (by id) in order-carrier.tpl if $cart->getProducts() have specify product? Something like: {assign var=availableFSVoicher value=false} {foreach from=$cart->getProducts() item='product'} {if $product.id_product == '13'}{assign var=availableFSVoicher value=true} {/foreach} and then in carrier foreach you must do something like: -- start foreach-- {if $carrier.id_carrier == '13' && $availabeFSVoucher == true OR $carrier.id_carrier != '13'} -- content -- {/if} -- end foreach -- Link to comment Share on other sites More sharing options...
tdr170 Posted July 12, 2013 Author Share Posted July 12, 2013 Sounds like the correct point of attack but I think for this one you may need to be more specific, my order-carrier.tpl does not seem to have {if $cart->getProducts. If possible for you to look at I can post my tpl file. Thanks for the help. Link to comment Share on other sites More sharing options...
Krystian Podemski Posted July 12, 2013 Share Posted July 12, 2013 (edited) There it is: http://pastebin.com/SeDUxd2y Just modify carrier and product in few first lines. My goal: * hide specify carrier if customer have voucher for free shipping and you don't want to show paid carrier Cons: - you must change carrier ID in .tpl after every carrier edit - you can't display that carrier with stnadard price - that specify carrier can't be default ---- If you want to show all carriers and not make free specify carriers you must modify Cart.php file. Edited July 12, 2013 by Krystian Podemski (see edit history) Link to comment Share on other sites More sharing options...
tdr170 Posted July 12, 2013 Author Share Posted July 12, 2013 (edited) OK so this is on the right track, the only trouble I have with this is that it seems to only disable 1 carrier. Product id is - 821 I have 5 carriers there Id's are Pick Up In Store (free) - 5 First class - 444 Parcel Post - 445 UPS Ground - 474 UPS Three Day - 475 I need to disable 3 carriers 444, 474 and 475 but the code only seems to do one or the other. I tried to copy the variable line : {assign var=specialCarrierID value=444} {assign var=specialCarrierID value=474} {assign var=specialCarrierID value=455} but this just resuts in the carrier from the last line being disabled. If I leave as posted I can disable any one but not all, here is what I have. I don't care about the in store as that is free anyway. {assign var=specialProduct value=821} {assign var=displayCarrierWithVoucher value=true} {assign var=specialCarrierID value=444} {assign var=specialCarrierID value=474} {assign var=specialCarrierID value=475} {assign var=cartProducts value=$cart->getProducts} {foreach from=$cartProducts item='product' name='freeShippingCheck'} {if $product.id_product == 821}{assign var=displayCarrierWithVoucher value=false}{/if} {/foreach} Something else I just noticed is that this is not being applied to just the one product but to all products. Thanks so much for your help and fast reply's. Edited July 12, 2013 by tdr170 (see edit history) Link to comment Share on other sites More sharing options...
Rukshar Khan Posted December 4, 2013 Share Posted December 4, 2013 I have read many posts but none of them are straight forward.. I am having an issue where I created 2 carriers and they ship to different parts ofthe country. Say for examlple Carrier A and B . A works OK from all angles.. Carrier A calculates estimates correctly, Carrier B also estimates correctly but when used to post to the card using estimates calculator, its adds a line as Free Shipping to the cart. How can I solve this. Please help. Anyone.. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now