WooCommerce: permitir "pagar el pedido" sin iniciar sesión

Algunos complementos, como los pagos de "depósito" y "suscripción", envían a los clientes a la página "Pagar por pedido" para completar un pedido pendiente de WooCommerce. En ciertos casos, también, el cliente se ve obligado a iniciar sesión y esto realmente afecta la tasa de conversión de ventas; en lugar del formulario de pago, los clientes ven este aviso: " Inicie sesión en su cuenta a continuación para continuar con el formulario de pago ".
Aquí hay un fragmento rápido para asegurarse de que los clientes no tengan que iniciar sesión cuando estén en la página "Pagar por pedido", para que puedan continuar con el pago de inmediato. La función de WooCommerce en cuestión es wc_customer_has_capability y, afortunadamente, podemos anularla con el filtro user_has_cap . ¡Disfrutar!

Fragmento de PHP: permitir que el cliente "pague el pedido" si se desconectó (pago de WooCommerce)
/** * @snippet Pay for Order if Logged Out - WooCommerce Checkout * @how-to Get CustomizeWoo.com FREE * @author Rodolfo Melogli * @compatible WooCommerce 3.6.2 * @donate $9 https://businessbloomer.com/bloomer-armada/ */ add_filter( 'user_has_cap' , 'bbloomer_order_pay_without_login' , 9999, 3 ); function bbloomer_order_pay_without_login( $allcaps , $caps , $args ) { if ( isset( $caps [0], $_GET [ 'key' ] ) ) { if ( $caps [0] == 'pay_for_order' ) { $order_id = isset( $args [2] ) ? $args [2] : null; $order = wc_get_order( $order_id ); if ( $order ) { $allcaps [ 'pay_for_order' ] = true; } } } return $allcaps ; } |
Deja una respuesta