Support » Plugin: WooCommerce » stop other shipping methods showing with free shipping

Viewing 4 replies - 1 through 4 (of 4 total)
  • @stardaug the zone shouldn’t be free shipping. The zone should cover a geographic region with the shipping options available in that zone as free shipping. Remember woocommerce selects exactly one zone to use based on the geography of the person shopping. Once it picks the zone, then it looks at what options are available in that zone.

    Using the info from their docs, you would need to expand the if to also include local pickup.

    Thread Starter stardaug


    Hi @anphira. Thank you for your help.

    The zone “name” can be anything though? Isn’t it just what you are choosing to call it? So my “free shipping” zone (as named) applies to Canada only (under regions) and I’ve assigned free shipping under methods.

    The free shipping is only for gift cards, nothing else in the store. But when I add a gift card to my cart, it doesn’t automatically say free shipping. And I had to add free shipping coupon which I didn’t want to do. But even then the other shipping methods (local pickup and calculate shipping still show for the gift card. I don’t want any other shipping methods or to calculate to show since it’s free shipping automatically.

    That’s what I am struggling with.

    Here’s some screenshots of the cart and checkout. At checkout local pickup still is showing, should it not say “free shipping” instead?

    • This reply was modified 4 years, 10 months ago by stardaug.

    @stardaug In your shipping zone for Canada — what are all of the methods you have available? Remember, there can be only ONE zone match for a location. Then all shipping options for that location need to be in that zone.

    As far as having particular items ship only certain methods, then you can configure shipping classes and apply those classes just to the products that you want. So you’d set up a Shipping Class for “Gift Cards” and then on your gift card products you’d assign this as their class. Then under your shipping zone you add the appropriate method and give it a rate based on the shipping class.

    If you have multiple “Shipping Methods” in your “free shipping” (Canada) zone, you’ll get multiple shipping methods in the cart page too.
    Hence, to get Free Shipping only for your Gift product, copy this code snippet for enabling free shipping only and paste it in your functions.php file.

    And you are done!

    There is no need to create Shipping Class as you can do this with your created Shipping Zone, which has shipping method “Free Shipping”.
    The code will hide other shipping methods, if you have free shipping enabled for any product (In your case, Gift Card)

    You can refer this quick guide for shipping for more understanding of shipping classes and shipping methods.

    • This reply was modified 4 years, 10 months ago by azhar04.
Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘stop other shipping methods showing with free shipping’ is closed to new replies.