Disattivare metodi di pagamento woocommerce

Disattivare metodi di pagamento woocommerce

woocommerceA volte è necessario  intervenire più drasticamente rispetto ai comuni plugin per adattare il nostro ecommerce wordpress alle nostre necessita.

Mi è capitato di recente di dover gestire i metodi di pagamento con particolari condizioni, disattivando alcune modalità secondo alcune specifiche.

Ed ecco che ci viene in aiuto il nostro ormai conosciuto functions.php dove andremo ad inserire la nostra condizione per disattivare le modalità di pagamento per esempio: in base alla categoria dei prodotti presenti nel carrello o in base al tipo di spedizione scelta.

add_filter( 'woocommerce_available_payment_gateways', 'payment_gateway_disable_role' );

function payment_gateway_disable_role( $available_gateways ) {
global $woocommerce;
	
        //verifica se spedizione nazionale
	if ( <condizione>) {
	unset( <modalita di pagamento>); //disattiva paypal
    	}
    return $available_gateways;
}

Nell’esempio vi mostro come disattivare paypal se la spedizione è nazionale:

add_filter( 'woocommerce_available_payment_gateways', 'payment_gateway_disable_role' );

function payment_gateway_disable_role( $available_gateways ) {
global $woocommerce;
	//trova la modalità di pagamento selezionata
	$chosen_methods = WC()->session->get( 'chosen_shipping_methods' );
 	$chosen_shipping = $chosen_methods[0]; 
        //verifica se spedizione nazionale
	if ( $chosen_shipping=='local_delivery' ) {
	unset( $available_gateways['paypal'] ); //disattiva paypal
    	}
    return $available_gateways;
}

Qui di seguito vi mostro alcune delle modalità di pagamento che si possono disattivare

unset( $available_gateways['paypal'] ); // paypal
unset( $available_gateways['bacs'] ); //bonifico bancario
unset( $available_gateways['cod'] ); //in contanti – contrassegno
unset( $available_gateways['cheque'] ); //assegno

Sperando che i nostri articoli vi siano stati di aiuto vi invito a lasciare un commento in caso di chiarimenti o per approfondire eventualmente il tema trattato.

Francesca

©2021 AGANIS WEB SOFTWARE di Francesca Roccabruna P.IVA TRENTO 02183500228 - N.REA 205930 La Web Agency per la realizzazione del tuo sito web
Privacy Policy