Este sencillo fragmento de código te permite mostrar el campo de cupones solo cuando hay cupones disponibles y activos. Evita la visualización innecesaria del campo de cupones cuando no hay promociones en curso, mejorando así la experiencia del usuario en tu tienda.
// Oculta el campo para canjear cupones de descuento si no hay descuentos disponibles add_filter( 'woocommerce_coupons_enabled', 'disable_coupon_field_if_not_coupons_availables' ); function disable_coupon_field_if_not_coupons_availables(){ $coupons_availables = false; $args = array( 'posts_per_page' => -1, 'orderby' => 'title', 'order' => 'asc', 'post_type' => 'shop_coupon', 'post_status' => 'publish', ); $coupons = get_posts( $args ); foreach ( $coupons as $key => $coupon ) { $coupon_object = new WC_Coupon( $coupon->post_title ); if ( $coupon_object->is_valid() ) { $coupons_availables = true; break; } } if ( !$coupons_availables ) { return $coupons_availables; } return 'yes' === get_option( 'woocommerce_enable_coupons' ); }