Categories: WooCommerce

WooCommerce Show “Free Shipping” Only When It’s Available

WooCommerce will show all shipping methods that match the customer and the cart contents as the default setting. This means “Free Shipping” will also show along with “Flat Rate” and other shipping methods.

What if you would like to hide other shipping methods and show only “Free Shipping” when it’s available?

Here is the code you may copy and paste at the bottom of functions.php where you can access it through > Theme File Editor > functions.php.

function tt_hide_shipping_when_free_is_available( $rates ) {
 $method = array();
 foreach ( $rates as $rate_id => $rate ) {
  if ( $rate->method_id === 'free_shipping' ) {
      $methods[ $rate_id ] = $rate;
             break;
  }
 }
 return ! empty( $free ) ? $free : $rates;
}
add_filter( 'woocommerce_package_rates', 'tt_hide_shipping_when_free_is_available', 100 );

terrytsang

Share
Published by
terrytsang

Recent Posts

Unveiling the Mystery: Why Do We Call It ‘Startup’?

1. The Origin and The Meaning of Startup The word "start" refers to the beginning…

2 years ago

Get More Done in Less Time: 13 Must-Have AI Tools for Skyrocketing Your Productivity

=== #1: AI Chatbot === 1. ChatGPTGet Started here: https://chat.openai.comChatGPT, one of the most significant language…

2 years ago

How to Add Dashicons to WordPress Frontend

Dashicons is the official icon font since WordPress admin as of 3.8. https://developer.wordpress.org/resource/dashicons/ However, it…

3 years ago

Coffee Chat with Founder of Hai Kuang

Recently I had a great coffee chat with my old pal - Wei Ming, founder…

3 years ago

WooCommerce Custom Order Status “Processing”

Sometimes there is a need for a custom new order status for WooCommerce orders such…

3 years ago

Logo Design Ideas

Here is a list of logo branding ideas for your next business or startup:  …

3 years ago