Redireccionar a inicio de sesion tras compra en WooCommerce WordPress

  • Autor Autor Carambel
  • Fecha de inicio Fecha de inicio
Carambel

Carambel

Ómicron
Social Media
Verificado
Verificación en dos pasos activada
Hola, he encontrado este código, me funciona bien básicamente lo que hace es:

En determinada url de un sitio web de wordpress en este caso es la url de FINALIZAR COMPRA DE WOOCOMMERCE, el código redirecciona a una url de INCIO DE SESION, eso es genial, pero ¿como se puede hacer que una vez iniciado sesión retorne a la anterior url de la cual salió?


Este código lo he pegado en functions.php de wordpress:
PHP:
add_action( 'template_redirect', 'redirect_to_specific_page' );

function redirect_to_specific_page() {

if ( is_page('finalizar-compra') && ! is_user_logged_in() ) {

wp_redirect( 'https:/miweb.pe/login', 301 );
  exit;
    }
}

He intentado con métodos mas básicos como el https://miweb.pe/login/?redirect_to=https://miweb.pe/finalizar-compra, pero no funciono.
 
Última edición:
Interesante, estoy en la creación de mi ecommerce con woocomerce, me puede servir.
 
Hola, he encontrado este código, me funciona bien básicamente lo que hace es:

En determinada url de un sitio web de wordpress en este caso es la url de FINALIZAR COMPRA DE WOOCOMMERCE, el código redirecciona a una url de INCIO DE SESION, eso es genial, pero ¿como se puede hacer que una vez iniciado sesión retorne a la anterior url de la cual salió?



Este código lo he pegado en functions.php de wordpress:

PHP:
add_action( 'template_redirect', 'redirect_to_specific_page' );

function redirect_to_specific_page() {

if ( is_page('finalizar-compra') && ! is_user_logged_in() ) {

wp_redirect( 'https:/miweb.pe/login', 301 );
  exit;
    }
}

He intentado con métodos mas básicos como el https://miweb.pe/login/?redirect_to=https://miweb.pe/finalizar-compra, pero no funciono.
Puedes hacer algo como esto, pero nose si funcione o si tu formulario es personalizado, el formulario de WP usa un
input oculto para establecer a cual url redireccionar luego del login.

1 - Con tu codigo redirecionas a https://miweb.pe/login/?redirect_to=https://miweb.pe/finalizar-compra
2 - En tu formulario agrega este input si existe el parametro redirect_to con una url.

PHP:
<?php

if(!empty($_GET['redirect_to'])){
    $redirect_url = home_url('/finalizar-compra/');
} else {
    $redirect_url = home_url('/wp-admin/');
}

?>

<input type="hidden" name="redirect_to" value="<?php echo $redirect_url; ?>"/>
 
Aqui otro ejemplo.
 
Atrás
Arriba