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

WP-CLI Parte 5, trabajando con la base de datos
WP-CLI Parte 5, trabajando con la base de datos
Quinta entrega de la serie de entradas sobre WP-CLI. Toca hablar de cosas que podemos hacer con la base de datos a través de la…
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…
Cómo añadir nuestras propias opciones multi-idioma en el personalizador de WordPress
Cómo añadir nuestras propias opciones multi-idioma en el personalizador de WordPress
En la entrada anterior veíamos cómo agregar nuestras propias opciones en el personalizador de WordPress. En ésta entrada vamos a ver cómo podríamos organizarlas por…
Creando un tema desde cero para WordPress parte 3: El loop
Creando un tema desde cero para WordPress parte 3: El loop
1. Creando un tema desde cero para WordPress: Consideraciones previas 2. Creando un tema desde cero para WordPress: Escribiendo el tema 3. Creando un tema…