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.

 

 

Categories

Related Blogs

How to hide particular category product on shop

To hide a particular category on the shop page using the `woocommerce_product_query` hook, you can modify the query parameters to exclude the category you want to hide. This approach allows you to customize the product query directly without modifying the main query.

Delete Product Image With Product Delete In WooCommerce

In WooCommerce, when you delete a product, by default, the product images are not automatically deleted from the server to avoid accidental data loss. However, you can add a custom action to delete the product images when a product is deleted. Here’s a step-by-step guide to achieve this: