I need to find a way to check if a coupon is applied to Woocommerce checkout, if so I would like to do something. I have tried searching around for this and cannot find a solution.
here is a slimmed down version of what I am trying:
add_action('woocommerce_before_cart_table', 'apply_product_on_coupon');
function apply_product_on_coupon( ) {
global $woocommerce;
$coupon_id = '12345';
if( $woocommerce->cart->applied_coupons === $coupon_id ) {
echo 'YAY it works';
}
}
So is this not the right way to check if the coupon exists in cart? if( $woocommerce->cart->applied_coupons === $coupon_id )
From your example, something like this might work. This is untested, but should give you a step in the right direction:
This might be an ages issue but an easy solution is to use
This return array lists of applied coupons, you can then use foreach, for or in_array to check applied coupons.
Hope that helps
If you know the coupon code but not the coupon post ID, you can use this mash up of realmag777’s answer and maiorano84’s answer.