akifquddus
akifquddus

Reputation: 632

Need to Change Sale Badge Text in WooCommerce

The following works for the Product page but it does not work for the Shop page.

<?php
add_filter('woocommerce_sale_flash', 'woocommerce_custom_sale_text', 10, 3);
function woocommerce_custom_sale_text($text, $post, $_product)
{
    return '<span class="onsale">PUT YOUR TEXT</span>';
}

Please suggest modifications. Thanks!

Upvotes: 0

Views: 4296

Answers (2)

Akash Badole
Akash Badole

Reputation: 51

Use This

add_filter( 'woocommerce_sale_flash', 'wooc_custom_replace_sale_text' );
function wooc_custom_replace_sale_text( $html ) {
return str_replace( __( 'Sale!', 'woocommerce' ), __( 'Your Text', 'woocommerce' ), $html );
}

Upvotes: 1

Rameez Iqbal
Rameez Iqbal

Reputation: 507

I tried your code and it works perfectly for the shop page as well. You may try increasing the priority or it can be a conflict with some other plugin or theme.

You may also check the following file to confirm it has applied the woocommerce_sale_flash filter

woocommerce\templates\loop\sale-flash.php

Upvotes: 0

Related Questions