J'essaie de masquer les champs de coupon pour certains produits dans le panier WooCommerce et la page de paiement. Après une recherche sur Google, j'ai trouvé un code qui masque le champ du coupon, mais uniquement pour un produit.
Comment puis-je gérer plusieurs produits dans ce code :
// masquer le champ du coupon sur la page de paiement fonction Disable_coupon_field_on_checkout( $enabled ) { si ( is_checkout() ) { $product_id = 240790 ; $in_cart = faux ; foreach( WC()->cart->get_cart() as $cart_item ) { $product_in_cart = $cart_item['product_id']; si ( $product_in_cart === $product_id ) $in_cart = true ; } si ( $in_cart === vrai ) { $ activé = faux ; } } renvoyer $ activé ; } add_filter( 'woocommerce_coupons_enabled', 'disable_coupon_field_on_checkout' ); // masquer le champ du coupon sur la page du panier fonction Disable_coupon_field_on_cart( $enabled ) { si ( is_cart() ) { $product_id = 240790 ; $in_cart = faux ; foreach( WC()->cart->get_cart() as $cart_item ) { $product_in_cart = $cart_item['product_id']; si ( $product_in_cart === $product_id ) $in_cart = true ; } si ( $in_cart === vrai ) { $ activé = faux ; } } renvoyer $ activé ; } add_filter( 'woocommerce_coupons_enabled', 'disable_coupon_field_on_cart' );
Le code ci-dessous gérera plusieurs ID de produit et/ou ID de variante pour les pages de panier et de paiement, désactivant le champ de coupon pour ces produits.
Ça devrait être utile