I'm using the WooCommerce plugin "Points & Rewards" which displays two notices in my checkout.
I found the code of the notice generation in the plugin:
public function __construct() {
....
// add earn points/redeem points message above cart / checkout
add_action( 'woocommerce_before_checkout_form', array( $this, 'render_earn_points_message' ), 5 );
add_action( 'woocommerce_before_checkout_form', array( $this, 'render_redeem_points_message' ), 6 );
....
}
I tried to remove the notice with the following codes:
remove_action( 'woocommerce_before_checkout_form', array( 'WC_Points_Rewards_Cart_Checkout->render_earn_points_message' ), 5 );
remove_action( 'woocommerce_before_checkout_form', array( 'render_earn_points_message' ), 5 );
remove_action( 'woocommerce_before_checkout_form', array( 'woocommerce_render_earn_points_message' ), 5 );
But they don't work. Is there an other way to remove them? Or a correct way to adress them?
If I want to remove the coupon notice in the checkout, this code works fine:
remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 );
You can use the following to remove "Points & Rewards" messages from checkout page:
add_filter( 'wc_points_rewards_earn_points_message', 'remove_rewards_earn_points_message', 20, 2 );
add_filter( 'wc_points_rewards_redeem_points_message', 'remove_rewards_earn_points_message', 20, 2 );
function remove_rewards_earn_points_message( $message, $data ) {
if( is_checkout() )
return '';
return $message;
}
Code goes in function.php file of your active child theme (or theme).
Tested and works