Pregunta

He intentado hacer esta regla, así como un hook_user usado sin suerte. Definitivamente mete dentro de la caja de inicio de sesión (tenía un registro de guarda), pero la redirección no ocurrir y que se siguen enviando a /user al inicio de sesión.

Estoy tratando esto con ninguna suerte:

/**
 * Implementation of hook_user()
 */

function multistep_registration_user($op, &$edit, &$account, $category = NULL) {
    switch ($op) {
        case 'insert':
            multistep_registration_save_content_profile_name($account);
            break;
        case 'login':
            if (!multistep_registration_is_complete($account->uid)) {
                drupal_goto('user/register/complete-registration');
                exit;
            }
            break;
        default:
            break;
    }
}


function multistep_registration_is_complete($uid) {     
    if ($uid == 1) {
        return TRUE;
    }

    $node = content_profile_load('profile', $uid);

    if ($node->field_completed_registration[0]['value'] == 'yes') {
        return TRUE;    
    }

    return FALSE;
}

¿Por qué no volviendo a dirigir? Los nuevos usuarios todos tienen el valor establecido como 'no'.

¿Fue útil?

Solución

Se podría tratar de usar LoginToboggan , lo que le permite establecer una redirección de inicio de sesión.

Otros consejos

Uno de los métodos que utilizamos está utilizando Reglas . Se le permite hacer una regla para:

  • El usuario acaba de iniciar sesión.
  • El usuario no ha completado el perfil de contenido (se puede seleccionar el tipo de contenido particular).
  • hacer una acción para: usuario redirección a la URL que desea

Hope que ayuda!

EDIT: También puede hacer que cuando un usuario visita una página y tiene un papel que desee, redirigirlos. De esta manera, se les obliga a llenarlo y no les permite hacer cualquier otra cosa (si quieres que).

Login Destino para redirigir después de inicios de sesión en mis sitios; Yo sé que tiene la capacidad de fragmentos de usar PHP para crear las condiciones para situaciones específicas, pero nunca los he utilizado.

Yo sólo voy a poner esto aquí en forma de respuesta, Puede utilizar las reglas para hacer esto, incluso si la regla proporcionada por el perfil contenido no está disponible.

Sólo tiene que utilizar el "usuario ha iniciado sesión en el" gatillo, añadir condiciones para los campos de interés de estar vacío y la redirección.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a drupal.stackexchange
scroll top