Buenas, recientemente he instalado el plugin WooCommerce Redsys Gateway Ligh , pero resulta que por cuestiones internas a la empresa, es necesario colocar el pedido, una vez hecho el pago “En espera” pero por lo que veo en este plugin solo sale las opciones de “procesando” o “completado” por favor, existe alguna forma de colocar el pedido “En espera” una vez se haya hecho el pago con éxito. gracias de antemano y espero puedan ayudarme.
Contenido solo visible a usuarios registrados
Hola Josep
Puedes utilizar el siguiente código para modificar el estado del pedido:
// Actualiza automáticamente el estado de los pedidos a pendiente
add_action( 'woocommerce_order_status_processing', 'actualiza_estado_pedidos_a_pendiente' );
add_action( 'woocommerce_order_status_on-hold', 'actualiza_estado_pedidos_a_pendiente' );
function actualiza_estado_pedidos_a_completado( $order_id ) {
global $woocommerce;
//ID's de las pasarelas de pago a las que afecta
$paymentMethods = array( 'redsys', 'bacs', 'cheque', 'cod', 'paypal' );
if ( !$order_id ) return;
$order = new WC_Order( $order_id );
if ( !in_array( $order->payment_method, $paymentMethods ) ) return;
$order->update_status( ‘on-hold’ );
}
El código lo puedes añadir directamente en el archivo function.php o si utilizas algún plugin para añadir código como puede ser Code Snippets.
Tienes una guía en. la siguiente entrada del blog:
-> Cambiar estado del pedido en WooCommerce automáticamente
Solo una consulta ¿ porque utilizas ese plugin cuando puedes utilizar el oficial de Redsys ?
Un Saludo