Skip to content

Instantly share code, notes, and snippets.

@perezdans
Last active March 2, 2021 19:08
Show Gist options
  • Save perezdans/8e645d3f5e84200e709a57590c2e10d6 to your computer and use it in GitHub Desktop.
Save perezdans/8e645d3f5e84200e709a57590c2e10d6 to your computer and use it in GitHub Desktop.
WordPress: Redireccionar al usuario al loguearse según su rol. Si lo que pretendemos es enviar a los administradores, editores, autores, suscriptores… a páginas predefinidas por nosotros (cada uno a una diferente), podemos utilizar el código del siguiente ejemplo, añadiéndolo en un plugin de funciones o en el archivo «functions.php».
<?php
// ---------------------------------
// Redirección de registro (login) según el tipo (rol) de usuario.
// ---------------------------------
function jpd_custom_login_redirect($redirect_to, $request, $user) {
global $user;
if ( isset( $user->roles ) && is_array( $user->roles ) ) {
// Si es un usuario administrador le redirigimos al dashboard
if ( in_array( 'administrator', $user->roles ) )
return home_url( '/wp-admin/' );
// Si es un usuario con permisos de editor le enviamos a la página de gestión de entradas.
elseif ( in_array( 'editor', $user->roles ) )
return home_url( '/wp-admin/edit.php' );
// Y a todos los demás usuarios les redirigimos a la página de inicio de la web.
else
return home_url();
} else {
return $redirect_to;
}
}
add_filter( 'login_redirect', 'jpd_custom_login_redirect', 10, 3 );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment