Tenemos ciertos usuarios en nuestra lista de miembros que tienen un rol de «proveedor» que se les otorga. Todos los miembros será redirigido a una página determinada al inicio de sesión. ¿Cómo puede lograrse esto?

Advertencia! Redirigir a los usuarios cuando inician sesión puede tener extraño y sin duda de los efectos no deseados! drupal.org/node/1772880

OriginalEl autor jini | 2010-08-07

8 Comentarios

  1. 4

    Puede definir acciones y disparadores en Drupal:

    Acción(admin/settings/acciones)
    Redirigir a una página específica

    Trigger (admin/build/disparador/usuario)
    Después de que el usuario ha iniciado sesión en

    Probar esta.

    EDITAR (ver comentarios):

    Crear un pequeño módulo de verificación de inicio de sesión del usuario proceso de cuál es el papel que tiene y, a continuación, redirigir si es necesario.
    drupal_goto => redirección de la función en drupal

    hook_user =>activa en las operaciones de usuario

    Y de los roles del usuario:

    GLOBAL $user;
    $roles = $user->roles;
    $vendor = in_array('vendor', $roles);

    $vendedor, a continuación, tiene un valor verdadero/falso se decide redirigir o no.

    Si usted no sabe cómo hacer esto, acaba de publicar aquí y voy a escribir el módulo para usted. Pero esta sería una buena práctica para escribir el futuro de la drupa módulos para usted quizá. 🙂

    Que va a redirigir a todos los usuarios, no con una función específica.
    Ah, no he leído la pregunta correctamente, mi mal. Puede crear un pequeño módulo y, a continuación, utilizar hook_user con $op = inicio de sesión, compruebe la función del usuario y, a continuación, hacer una redirección tal vez?

    OriginalEl autor Rakward

  2. 11

    Hay más de una manera para que la piel este gato…
    Este es mi preferido de Drupal 7 método:

    function hook_user_login(&$edit, $account) {
      $edit['redirect'] = 'node/123';
    }
    Esto funciona para «nodo de caminos». ¿Cómo le redirigir a un menú personalizado de acción?
    Exactamente de la misma manera: $editar[‘redirect’] = ‘my_custom_menu_item’;
    ¿Por qué el downvote? Sírvanse explicar si no hay nada malo con esto! Tan lejos como soy consciente de que este es el correcto y la mayoría de los «Drupal» el método para lograr esto…

    OriginalEl autor Felix Eve

  3. 6

    Para Drupal 7

    Acción –> admin/config/system/acciones – Redireccionar a la URL

    a continuación, activar el gatillo módulo

    Trigger –> /admin/structure/disparador/nodo

    si tu estás tratando de redireccionamiento de inicio de sesión sólo tienes que seguir este(seleccione el usuario en la ficha de página)

    ir a –> admin/structure/disparador/usuario

    a continuación,
    Trigger: Después de que un usuario ha iniciado sesión en

    elija una acción –>Redireccionar a la URL y asignar.

    A continuación, borrar la caché.

    Va a trabajar para usted!

    OriginalEl autor Harikrishnan

  4. 4

    Hay 2 maneras en DRUPAL 7

    1) Mediante la acción y el gatillo
    ver este http://drupal.org/node/298506

    2)si el uso de módulo personalizado

    function YOURMODULE_user_login(&$edit, $account) {
    
     if (!isset($_POST['form_id']) || $_POST['form_id'] != 'user_pass_reset' || variable_get('login_destination_immediate_redirect', FALSE)) {
    
     if(in_array('THE-ROLE-WANTED-TO-REDIRECT',$account->roles)): 
    
    drupal_goto('PATH');
    
     else: drupal_goto('user/'.$account->uid); 
    
    endif; 
    
    } 
    
    }

    OriginalEl autor VinodC

  5. 4

    Puede utilizar Reglas

    Eventos: el Usuario ha iniciado la sesión.

    Condición: el Usuario tiene rol

    Acciones: Página redirigir

    OriginalEl autor milkovsky

  6. 2

    siguiente condición para hook_user

    if($op =='login') drupal_goto("your path");

    OriginalEl autor mayur

Dejar respuesta

Please enter your comment!
Please enter your name here