WooCommerce Advanced Free Shipping


With the WooCommerce Advanced Free Shipping plugin you can setup your own advanced rules to determine when a free shipping rate should be available for the customer.
This plugin will give you full control over your free WooCommerce shipping rates.

Within each shipping rate you can create multiple ‘OR’ condition groups with multiple ‘AND’ conditions inside each group. This means that it is very easy to setup a
free shipping rate for multiple user roles in one shipping rate for example.

There are many default shipping conditions available.
Conditions like:

  • Sous-total
  • Quantité
  • Rôle utilisateur/utilisatrice
  • Pays
  • Zipcode
  • Classe de livraison
  • Catégorie
  • Poids
  • Volume (Width / Length / Height)
  • Et beaucoup plus…

Not there what you’re looking for? The plugin has been made to be easily extensible, meaning you can also add your own custom conditions through code snippets!

Regardez les captures d’écran !

Applying shipping cost

Have you given this plugin a shot and like how you can set things up?
I’ve build another plugin that allows you to setup shipping cost with the same conditional logic power as this plugin!

– Add shipping cost to the shipping rates
     – Per weight
     – Per item
     – Extra handling fee
– Setup a percentage based fee
– Add Advanced shipping cost via the WAS Advanced Pricing extension
     – Cost per shipping class
     – Cost per category
     – Cost per product
     – Cost per weight (table rate)
– Create shipping zones
– Set tax status

View Advanced Shipping for WooCommerce

Affichage d’un message de seuil de livraison gratuite

There are a few plugins out there that add a message when someone hasn’t reached the free shipping threshold yet. These plugin work on the ‘Free shipping’ option that is provided in WooCommerce by default.
It is unlikely that these plugins will work out of the box with Advanced Free Shipping due to the complexity of the conditional logic.

Pour afficher ce type de message, l’extension Advanced Messages for WooCommerce vous permet de configurer un message avec le même type de conditions selon les mêmes besoins que les options de livraison gratuite.

Les traductions, les demandes de fonctionnalités et les évaluations sont les bienvenues !


  • Espagnol
  • Italien
  • Portuguese (Brazil / Portugal)
  • Grec

Captures d’écran

  • WooCommerce Shipping options overview
  • WooCommerce Shipping rate example
  • WooCommerce Shipping rate all available conditions
  • Opérateurs de conditions WooCommerce disponibles


  1. Upload the folder woocommerce-advanced-free-shipping to the /wp-content/plugins/ directory
  2. Activez-la via le menu Extensions dans l’administration WordPress
  3. Allez à la page des réglages pour affiner les paramètres si vous le souhaitez


Puis-je configurer la livraison gratuite partielle ?

La réponse courte à cette question est « non », la réponse longue se résume à « peut-être ». J’ai écrit un article complet à ce sujet ici :
Appliquer la livraison gratuite pour des produits spécifiques dans WooCommerce

Plusieurs options de livraison gratuite peuvent-elles s’afficher simultanément ?

The current version of the plugin – 1.1.0 – doesn’t have the ability to show multiple Advanced Free Shipping rates at the same time.
During first development I made the – in hindsight – wrong decision thinking « Why would anyone need multiple WooCommerce free shipping options at the same time ».
In the future this will likely be changed, for now I recommend taking a look at the Advanced Shipping for WooCommerce plugin which does have the ability to show all rates that match the conditions.

The shipping rates I configured are not showing at the cart/check, why?

There are two common reasons why a rate may not be appearing when expected.

1) Shipping cache. It could be you’re looking at cached shipping rates. I’d recommend enabling the shipping debug mode when testing.

2) A conflict in the conditions prevents the rate from appearing. For example, having two ‘Country’ conditions in one condition group is not possible.
Try and set a single condition such as ‘Subtotal – greater – 0’ and see if that will appear.

If after the above still no rate is showing it is most commonly a third party element that is interfering. Try disabling all other plugins / switch to a default theme and see if the rate is appearing then.


21 mai 2023 4 réponses
hi. first i thank you for your great plugin. the language of my website is persian and i need to change view of shipping address in my website. for example in address we need to show country name first but in your plugin the country name is not first property. how can i change this?
4 janvier 2023 1 réponse
Just a question, how can i disable a payment method (ex paypal) when free shipping is available ?
12 décembre 2022
With so many expensive WooCommerce plugins out there, its nice to have one that does one thing well, simply, and for free. If all you want is to « force » some criteria (product category, etc) to be free shipping and call it something simple, this is a great plugin for just that. Great job, thank you!
Lire les 122 avis

Contributeurs/contributrices & développeurs/développeuses

« WooCommerce Advanced Free Shipping » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.


“WooCommerce Advanced Free Shipping” a été traduit dans 1 locale. Remerciez l’équipe de traduction pour ses contributions.

Traduisez « WooCommerce Advanced Free Shipping » dans votre langue.

Le développement vous intéresse ?

Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.


1.1.7 – 08-01-2024

  • [Fix] – PHP 8.2 compatibility

1.1.6 – 08-09-2023

  • [Add] – HPOS compatibility declaration
  • [Update] – Minimum PHP version updated to 7.0
  • [Tested] – PHP 8.0, WooCommerce 8.0

1.1.5 – 06-09-2022

  • [Fix] – Fixed wrong named action from ‘woocommerce_advanced_fees_condition_value_field_type_’ to ‘woocommerce_advanced_free_shipping_condition_value_field_type_’
  • [Fix] – Show in overview future scheduled rates
  • [Improvement] – Update WP Conditions to 1.0.12
    • [Fix] – PHP 8.0 compatibility with the Coupon condition

1.1.4 – 10-04-2018

  • [Improvement] – Improved mobile admin view
  • [Improvement] – Update WP Conditions to 1.0.8
  • [Fix] – Error message on debug mode when creating a new shipping rate

1.1.3 – 26-09-2017

  • [Add] – Helpful resources meta box
  • [Tested] – WooCommerce 3.2
  • [Improvement] – Update WP Conditions to 1.0.5
    – [Improvement] – WC 3.2 changes to prevent notices


    - [Improvement] - Use WC_Method:get_method_title() instead of get_title() to get method title.

1.1.2 – 29-06-2017

  • [Improvement] – Update WP Conditions to 1.0.3
    – [Fix] – ‘User role’ condition ‘Guest’ wasn’t working
    – [Improvement] – Allow conditions outside postbox / multiple times inside. Not limited to .postbox class.
    – [Add] – Zipcode range support. E.g. ‘Zipcode’ = ‘equal to’ = ‘10000-20000,30000-40000’

1.1.1 – 28-04-2017

  • [Fix] – Use 9 digit random IDs to prevent too big numbers for 32-bit systems
  • [Improvement] – Remove call to asset that no longer exists

1.1.0 – 06-03-2017

IMPORTANT NOTE – As of this version, the plugin requires PHP 5.3 or higher to function

  • [Fix] – Allow variations to be set (and make them working) with the ‘contains product’ condition
  • [Fix] – Prevent duplicate DB query
  • [Improvement] – BIG refactor of the backend conditions – please verify your setup if using custom coded condition
  • [Improvement] – Smoother User Experience with conditions
    • Instant adding of conditions / condition groups
    • Only show valid operator options
    • Instantly show condition descriptions
    • Deleting entire condition groups
    • Duplicate condition groups
  • [Improvement] – WC 2.7 compatibility changes

1.0.11 – 05-09-2016

  • [Fix] – State condition field only displayed states of the last country
  • [Fix] – Inability to add new conditions due to error

1.0.10 – 25-08-2016

  • [Improvement] – Optimized asset scripts
  • [Improvement] – Refactored condition code (backend)
  • [Improvement] – Allow asterisk (*) in zipcode to allow ‘begins with’ type of matching functionality
  • [Improvement] – Allow dollar and percentage signs in the ‘coupon’ condition to setup the condition based on the amounts instead of solely coupon codes
  • [Improvement] – Add a link to the shipping rates overview page on the plugins page
  • [Improvement] – Add support for continents in the ‘country’ condition (requires WC 2.6+)
  • [Improvement] – Improved ‘product’ condition value fields (allow searching) and supports huge amounts of product
  • [Improvement] – Allow comma separated cities

1.0.9 – 16-06-2016

  • [Fix] – Fix a notice that was introduced with a change in WooCommerce 2.6

1.0.8 – 22-12-2015

  • [i18n] – Portuguese (pt_PT) translation
  • [i18n] – Greek (el) translation
  • [Improvement] – Keep the WooCommerce -> Settings menu open while in Shipping rate options
  • [Tweak] – [Dev] – Remove method prefixes on many places where possible (not all)

1.0.7 – 02-11-2015

  • [Improvement] – Conditional load resources in admin
  • [Improvement] – Add AJAX nonce verification
  • [Remove] – WooCommerce 2.1 is no longer supported. Please update WC if you’re still on a older version.

1.0.6 – 04-06-2015

  • [Add] – Escaping/sanitizing to different elements
  • [Improvement] – Shipping class matching function now uses variation shipping class instead of the parents’
  • [i18n] – Add Italian translation

1.0.5 – 14-12-2014

  • Fix – Hide other shipping doesn’t save in rare cases
  • Improvement – Use of WC() singleton instead of $woocommerce global
  • Improvement – Add background color to overview table every other row


  • [Fix] – Weight condition wasn’t working
  • [Fix] – Cash On Delivery for WAFS
  • [Add] – Added languages files for Portuguese – Brazil pt_BR


  • [Improvement] – Customized user messages when saving shipping method
  • [Improvement] – Updated some comments to comment standards
  • [Improvement] – Overview not showing all actions when hovering only one
  • [Improvement] – Added ABSPATH check to each file
  • [Improvement] – Improved code comments
  • [Improvement] – Remove globals, use WAFS() function now
  • [Improvement] – Zip codes are now better detected (only integer values)
  • [Improvement] – Load textdomains
  • [Improvement] – Add compatibility for custom value fields
  • [Improvement] – Add world wide state support
  • [Fix] – No notice on shipping title in DEBUG mode
  • [Fix] – Loading icon on sub directory websites
  • [Fix] – Condition description didn’t show sometimes
  • [Fix] – ‘Category’ – ‘Not equal to’ error
  • [Fix] – Showing drafts in overview
  • [Removed] – Author from overview, who needs that?


* [Added] – support for comma separated zip codes
* [Added] – filter for condition values
* [Added] – filter for condition descriptions


  • [Fix] – Wrongful url for sub-domain websites
  • [Add] – Added states as condition


  • Version initiale