Display “FREE” if Product Price is 0 or Empty On WooCommerce Cart Page Or Checkout Page.

Do you ever need to replace the default WooCommerce pricing label for a free product?

 

If we ask any user what will he/she like the text “FREE” or a price tag of “0.00”. Majority will say “Free” Attracts More.

 

Now Let’s talk about WooCommerce ,In WooCommerce when product price is zero or empty then on cart page or checkout page and product page will show zero price ($0.00).

Instead of showing the default WooCommerce pricing label of $0.00, you want to show custom text,like “FREE” or “Download Now”.

In Previous Image we so price tag , But I still believe “FREE” looks much better than “$0.00”. It’s much more enticing, isn’t it?

 

For Cart and Checkout Page:

 

function FreeCartItemPriceCustomLabel( $price, $cart_item, $cart_item_key ) {
 $FreeLabel = '<span class="amount" style=" color: #f7ad06 !important; ">' . __('Free') . '</span>';
 if( $cart_item['data']->get_price() > 0 ){
  return $price;
 }else{
  return $FreeLabel;
 }
}
add_filter('woocommerce_cart_item_subtotal','FreeCartItemPriceCustomLabel', 21, 3);
add_filter('woocommerce_cart_item_price','FreeCartItemPriceCustomLabel', 21, 3);

 

For Single Product Page:

 

Display “FREE” if WooCommerce Product Price is 0 or Empty on Single Product Page

 

function FreeCartItemPriceCustomHtml( $price, $product ) {
 if ( '' === $product->get_price() || 0 == $product->get_price() ) {
  $price = 'FREE';
 }  
}
add_filter('woocommerce_get_price_html','FreeCartItemPriceCustomHtml', 21, 2);

Or

 

function FreeCartItemPriceCustomHtml( $price, $product ) {
 if ( empty( $product->get_price() ) ) {
  $price = 'FREE';
 }  
}
add_filter('woocommerce_get_price_html','FreeCartItemPriceCustomHtml', 21, 2);

 

Using “if” conditional statement we are just checking the price to make sure that it is “empty” i.e. free or price zero, and then if it is, returning different label text which in the case above is the word “FREE”.

 

If the product is not free, then we don’t change anything and return the original price.

 

 

Related Blogs

Add same product to cart twice instead of changing quantity in Cart

By default, WooCommerce allows customers to change the quantity of a product in the cart by updating the quantity input field on the cart page. If the quantity is increased, the product will be added to the cart only once with the updated quantity. However, if you want to allow customers to add the same product multiple times as separate items in the cart, you’ll need to customize the cart behavior.

Sort A ACF Repeater Field Results

Filters the field $value after being loaded. Sort a repeater field using a function called array_multisort(). Sorting Filtering Modifying ACF results .

Request A Quote

Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.