Pour supprimer un champ personnalisé du paiement dans WooCommerce lorsqu'un produit spécifique est dans le panier, vous pouvez utiliser la fonction champs_de_paiement_woocommerce et supprimez le champ en fonction du produit. Voici un exemple de code qui peut vous aider :

add_filter( 'woocommerce_checkout_fields', 'remove_custom_field_based_on_product' );

function remove_custom_field_based_on_product( $fields ) {
    // Hier die Produkt-ID einfügen, die das benutzerdefinierte Feld ausblenden soll
    $product_id = 123;
    
    // Überprüfen, ob das Produkt im Warenkorb ist
    foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
        if ( $cart_item['product_id'] == $product_id ) {
            // Wenn das Produkt im Warenkorb ist, entfernen Sie das benutzerdefinierte Feld
            unset( $fields['billing']['billing_custom_field'] );
            break;
        }
    }
    
    return $fields;
}

Dans cet exemple, le champ personnalisé nommé champ_personnalisé_de_facturation retiré de la caisse si le produit avec l'ID 123 est dans le panier. Vous pouvez personnaliser le code pour supprimer le champ personnalisé que vous souhaitez masquer et le produit qui déclenche le déclencheur.