WooCommerce: deshabilite la pasarela de pago para un rol de usuario específico

Es posible que desee deshabilitar las pasarelas de pago según el rol del usuario o la capacidad del usuario. Por ejemplo, es posible que desee desactivar PayPal para "función de usuario: shop_manager" o habilitar una puerta de enlace específica para "función de usuario: cliente". Todo lo que necesita es pegar el siguiente código en su functions.php
Fragmento de PHP: deshabilite la pasarela de pago para un rol de usuario específico @ WooCommerce Checkout
/** * @snippet Disable Payment Gateway for a Specific User Role | WooCommerce * @how-to Get CustomizeWoo.com FREE * @author Rodolfo Melogli * @testedwith WooCommerce 3.8 * @donate $9 https://businessbloomer.com/bloomer-armada/ */ add_filter( 'woocommerce_available_payment_gateways' , 'bbloomer_paypal_disable_manager' ); function bbloomer_paypal_disable_manager( $available_gateways ) { if ( isset( $available_gateways [ 'paypal' ] ) && current_user_can( 'manage_woocommerce' ) ) { unset( $available_gateways [ 'paypal' ] ); } return $available_gateways ; } |
Fragmento de PHP: habilite la pasarela de pago para un rol de usuario específico @ WooCommerce Checkout
/** * @snippet Enable Payment Gateway for a Specific User Role | WooCommerce * @how-to Get CustomizeWoo.com FREE * @author Rodolfo Melogli * @compatible WooCommerce 3.8 * @donate $9 https://businessbloomer.com/bloomer-armada/ */ add_filter( 'woocommerce_available_payment_gateways' , 'bbloomer_paypal_enable_manager' ); function bbloomer_paypal_enable_manager( $available_gateways ) { if ( isset( $available_gateways [ 'paypal' ] ) && ! current_user_can( 'manage_woocommerce' ) ) { unset( $available_gateways [ 'paypal' ] ); } return $available_gateways ; } |
Cómo encontrar el ID de la pasarela de pago de WooCommerce
Aquí está la captura de pantalla

¿Existe un complemento de "Pasarelas de pago por función de usuario" de WooCommerce?
Si no se siente 100% seguro con la codificación, decidí buscar un complemento confiable que logre el mismo resultado de este fragmento (y más).
En este caso, encontré que el complemento de Pasarelas de pago condicionales de WooCommerce es el más completo cuando necesita habilitar/deshabilitar las pasarelas de pago según ciertos criterios. Puede crear "reglas" ilimitadas y usar, por ejemplo, los totales del carrito, el país de facturación, el país de envío, la función del usuario y mucho más para definir qué pasarela de pago muestra y cuál no.
Pero en caso de que no quiera usar complementos y desee codificar (o desee probar eso), siga leyendo
Deja una respuesta