disabilitare-metodi-pagamento-woocommerce

Limitare i metodi di pagamento in base al prodotto su WooCommerce

Se sei un esperto di tecnologia, puoi limitare i metodi di pagamento WooCommerce utilizzando una funzione hooked personalizzata nel hook del filtro woocommerce_available_payment_gateways. Ciò richiede l’aggiunta di uno snippet di codice al file PHP.

Dopo aver eseguito correttamente il backup del tuo sito, segui questa guida per disabilitare i gateway di pagamento WooCommerce in base agli articoli del carrello (tipo di prodotto):

Nella dashboard di WordPress, vai al menu Aspetto > Menu Editor temi.
Cerca il file function.php del tema e aggiungi il codice seguente a questo file.

add_filter('woocommerce_available_payment_gateways', 'conditional_payment_gateways', 10, 1);

function conditional_payment_gateways($available_gateways)
{
    // Not in backend (admin)
    if (is_admin())
    return $available_gateways;

    $prod_variable = $prod_simple = $prod_subscription = false;
    foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item)
    {
        // Get the WC_Product object
        $product = wc_get_product($cart_item['product_id']);
        // Get the product types in cart (example)
        if ($product->is_type('simple')) $prod_simple = true;
        if ($product->is_type('variable')) $prod_variable = true;
        if ($product->is_type('subscription')) $prod_subscription = true;
    }
    // Remove Cash on delivery (cod) payment gateway for simple products
    if ($prod_simple)
    unset($available_gateways['cod']); // unset 'cod'
    // Remove Paypal (paypal) payment gateway for variable products
    if ($prod_variable)
    unset($available_gateways['paypal']); // unset 'paypal'
    // Remove Bank wire (Bacs) payment gateway for subscription products
    if ($prod_subscription)
    unset($available_gateways['bacs']); // unset 'bacs'
    return $available_gateways;
}

Questo è tutto!

Per gli altri che vorrebbero portare a termine il lavoro senza toccare alcun bit di codice, puoi chiedere aiuto ai plugin di WordPress. Ci sono centinaia di plugin che eccellono nel nascondere i metodi di pagamento WooCommerce.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.