disabilitare-metodi-pagamento-woocommerce

Disabilitare i gateway di pagamento in base al ruolo utente

In questo tutorial ti mostrerò come abilitare o disabilitare i gateway di pagamento WooCommerce per un ruolo utente specifico. E anche come condizionarli per gli utenti registrati.

Tutto il codice riportato di seguito è basato woocommerce_available_payment_gateways sull’hook del filtro e può essere inserito nel file del tema corrente o figlio functions.phpo in un plug-in personalizzato.

Disattiva i metodi di pagamento per un ruolo utente specifico

add_filter( 'woocommerce_available_payment_gateways', 'rudr_turn_off_cod' );
  
function rudr_turn_off_cod( $available_gateways ) {
	
	if( current_user_can( 'subscriber' ) ) {
		if ( isset( $available_gateways[ 'cod' ] ) ) {
			unset( $available_gateways[ 'cod' ] );
		}
	}
	return $available_gateways;
}

Se desideri disabilitare un metodo di pagamento per più ruoli utente, puoi condizionarlo come current_user_can( ‘subscriber’ ) || current_user_can( ‘author’ ).

Qui di seguito ti 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

Abilita metodi di pagamento per un ruolo utente specifico

Il codice è molto simile a uno snippet precedente , la differenza è solo un simbolo! Quindi ne copio solo una parte.

if( ! current_user_can( 'subscriber' ) ) {

}

Quindi disabilitiamo i nostri gateway di pagamento per qualsiasi ruolo utente eccetto il ruolo Abbonato.

Abilita gateway di pagamento per utenti registrati

Questo codice si basa anche su uno snippet che ti ho mostrato prima, tutto ciò che devi fare è solo cambiarne una riga.

if( ! is_user_logged_in() ){

}

Quindi il risultato è che disabilitiamo il gateway di pagamento per tutti gli utenti che non hanno effettuato l’accesso.

Ti voglio ricordare che sono sempre felice di pubblicare un tutorial su richiesta, suggerite solo un argomento del tutorial nei commenti e se lo trovo interessante aspettate il tutorial.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.