En este ejemplo, debe personalizar la función hide_payment_method_for_specific_products cambiando los ID de producto y los nombres de los métodos de pago que desea ocultar según sus requisitos. Agregue esta función al functions.php de su tema y ocultará los métodos de pago seleccionados en función de los ID del producto.

Tenga en cuenta que esto es solo un ejemplo y deberá adaptarlo a sus necesidades específicas y a la configuración de WooCommerce. Asegúrese de crear una copia de seguridad de su archivo functions.php antes de implementarlo para asegurarse de no realizar cambios no deseados.

function hide_payment_method_for_specific_products($available_payment_methods) {
    // Überprüfe, ob das aktuelle WooCommerce-Produkt in deiner Bedingung ist
    if (is_checkout() && !empty(WC()->cart)) {
        $cart = WC()->cart;
        $hide_for_products = array(123, 456); // Hier die Produkt-IDs angeben, für die du die Bezahlmethode ausblenden möchtest
        
        // Überprüfe, ob sich eines der Produkte in der Warenkorbliste befindet
        foreach ($cart->get_cart() as $cart_item_key => $cart_item) {
            $product_id = $cart_item['product_id'];
            if (in_array($product_id, $hide_for_products)) {
                // Hier die Bezahlmethode(n) angeben, die du ausblenden möchtest
                $methods_to_hide = array('payment_method_to_hide1', 'payment_method_to_hide2');
                
                // Entferne die auszublendenden Bezahlmethoden
                foreach ($methods_to_hide as $method) {
                    if (isset($available_payment_methods[$method])) {
                        unset($available_payment_methods[$method]);
                    }
                }
                break; // Breche die Schleife ab, sobald ein passendes Produkt gefunden wurde
            }
        }
    }
    
    return $available_payment_methods;
}

add_filter('woocommerce_available_payment_gateways', 'hide_payment_method_for_specific_products');