Blog sobre desarrollo WordPress en Español Desarrollo WordPress en Español
registration form

Cómo redirigir al usuario cuando inicia o cierra sesión en WordPress

En este artículo vamos a explicar cómo redirigir al usuario cuando inicia o cierra sesión en WordPress. Ésto puede resultar muy útil en un desarrollo a medida, por ejemplo: En nuestro front tenemos un formulario de login, y queremos que cuando un usuario inicie sesión, sea redirigido directamente a un área privada a la que sólo tienen acceso los usuarios registrados.

También puede ser muy útil que cuando un usuario haga logout o cierre sesión, en lugar de redirigir al wp-login, te envíe a la home de nuestro sitio.

 

Redirigir al usuario cuando inicia sesión

Debemos añadir unas líneas de código a nuestro functions.php, donde crearemos una función para redirigir al usuario que añadiremos al action wp_login. Imaginemos que tenemos una página llamada “Área Privada” que sólo es accesible a usuarios logeados, vamos a ver cómo podemos redirigir al usuario allí cuando inicie sesión:

 

Redirigir al usuario cuando cierra sesión

Prácticamente igual que antes, pero en lugar de usar el hook wp_login, usaremos el hook wp_logout. Es decir, sólo tendremos que añadir en nuestro functions.php:

Con estas dos simples funciones podemos enviar al usuario donde queramos cuando inicie o cierre sesión. Podemos incluso ir un poco más allá: filtrar por tipo de usuario y en función de su rol redirigirle a un sitio u otro.

En el ejemplo anterior al iniciar sesión, puede que nos interese esta funcionalidad sólo para los usuarios suscriptores por ejemplo, pero cuando el login sea de un usuario administrador, que vaya directamente al backend. En este caso tendríamos que recurrir al filtro login_redirect, y actuar sobre él en función del rol:

Puede que también te interese

Mejora la puntuación de Google PageSpeed Insights: Especificar caché de navegador
Mejora la puntuación de Google PageSpeed Insights: Especificar caché de navegador
1. Optimizar imágenes 2. Minificar CSS y JS 3. Especificar caché de navegador 4. Habilita la compresión 5. Reducir el tiempo de respuesta del servidor…
Evitar la enumeración de usuarios en WordPress parte 2
Evitar la enumeración de usuarios en WordPress parte 2
En el artículo anterior veíamos lo que era la enumeración de usuarios y cómo un atacante malintencionado podría conseguir nuestro nombre de usuario a través…
Cómo crear un formulario de registro personalizado en WordPress
Cómo crear un formulario de registro personalizado en WordPress
En entradas anteriores hemos visto cómo crear formularios de log-in / log-out personalizados, y cómo agregar campos personalizados al perfil de usuario de WordPress tanto…
Archivo wp-config.php para diferentes entornos
Archivo wp-config.php para diferentes entornos
Local, desarrollo, pre-producción, producción… entornos de desarrollo habituales en cualquier proyecto web. Entornos con características diferentes, configuraciones diferentes, distintos usuarios de base de datos, distintos…