Cambiar Frontpage en Drupal 7 según rol usuario

Si queremos cambiar la página de inicio en Drupal 7 según el tipo de usuario podemos utilizar el módulo Views.
Imaginemos que tenemos los roles: empresas, clientes y el resto de roles de usuarios.

  1. Hacemos un página de bienvenida para cada tipo de usuario, podemos utilizar por ejemplo el tipo de contenido “Página básica” y apuntamos el número nid de identificación de cada página de bienvenida. Imaginemos que el nid de la página de empresas es 10, el de clientes 11 y para el resto de usuarios es 12.
  2. Creamos una nueva vista (View) con “Display format” como “unformatted list” y nos aseguramos que “Create a page” está seleccionado.
  3. Pinchando en la pestaña Advanced agregamos un “Contextual filters”.
  4. Seleccionamos Content: Nid y entonces hacemos clic en Apply (All Displays).
  5. En WHEN THE FILTER VALUE IS NOT IN THE URL seleccionamos Provide default value.
  6. En tipo seleccionamos “PHP Code”.
  7. En el espacio en blanco de PHP Code introducimos el siguiente código:
    global $user;
    if (in_array('empresas', $user->roles)) {
    return 10;
    }
    elseif (in_array('clientes', $user->roles)) {
    return 11;
    }
    else{
    return 12;
    }
    
  8. Guardamos la vista.
  9. Vamos a Configuración->Información del sitio y ponemos como Página inicial predeterminada la página de la vista que hemos creado.

Hemos conseguido que el frontpage se vea adaptado a cada rol de usuario.

Publicado por

victor

Hola!. Me llamo Víctor y soy Ingeniero Agrónomo de formación y programador web de profesión (desde el año 2006). Por otra parte me gusta, entre otras aficiones, el senderismo, jugar al futbol y al FIFA en la PS4. Te animo a participar en mi web www.biolucas.com

4 comentarios sobre “Cambiar Frontpage en Drupal 7 según rol usuario”

  1. Cuestión: Taxonomía
    Cómo configurar un listado de información clasificado según una determinada Taxonomía jerarquizada que permita visualizar esta jerarquía de clasificación además de los contenidos.
    Un saludo

    1. Hola Cores, gracias por participar. No he entendido al 100% la pregunta. No se si puedes poner un ejemplo más concreto de este problema con las taxonomías.

      Un saludo, Víctor

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

CommentLuv badge