Redirección desde una página de WordPress en función al rol del usuario

Mediante el siguiente código, vamos a tener disponible un shortcode que lo incluiremos en la página que necesitemos y se producirá una redirección a un lugar o a otro en función del rol del usuario.

El código siguiente tenemos que darlo o bien en el fichero functions.php o bien en un plugin como el Code Snippets (me gusta más la segunda opción).

add_shortcode('sc_redireccion_personalizada', 'redireccion_personalizada');
function redireccion_personalizada()
{
	$usuario = new WP_User(get_current_user_id());
	if( $usuario && is_object( $usuario ) && is_a( $usuario, 'WP_User' ) )
	{
		switch ($usuario->roles[0])
		{
			  case 'administrator':
				$url = admin_url();
				wp_redirect($url);
				break;
			  case 'rol_que_sea':
 				$url = "URL que sea";
				wp_redirect($url);
				break;
		}
	}
}

En el código anterior hemos generado la redirección con JavaScript en lugar de wp_redirect() porque no funcionaría al haber sido ya enviados los elementos al header en el momento del login.

Quizá te interese...
Deja un comentario...
Suscribirme
Notificación de
guest
0 Comentarios
Comentarios en línea
Ver todos los comentarios