Domanda

Ho provato a fare questa regola un così come hook_user utilizzato senza fortuna. Si ottiene sicuramente all'interno del caso di login (aveva un registro cane da guardia), ma il reindirizzamento non avviene e sono ancora inviato a /user su di login.

sto provando questo senza fortuna:

/**
 * 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;
}

Perché non è reindirizzato? I nuovi utenti hanno tutto il valore impostato come 'no'.

È stato utile?

Soluzione

Si potrebbe provare a utilizzare LoginToboggan , che permette di impostare un reindirizzamento al login.

Altri suggerimenti

Un metodo che usiamo sta utilizzando Regole . Esso consente di effettuare una regola per:

  • L'utente ha appena effettuato il login.
  • L'utente non ha completato Content profilo (è possibile selezionare il particolare tipo di contenuto).
  • fare un'azione per: utente Redirect a URL che si desidera

Speranza che aiuta!

EDIT: Si può anche fare quando un utente visualizza una pagina e ha un ruolo che si desidera, reindirizzarli. In questo modo, si costringe a compilarlo e non permette loro di fare qualsiasi altra cosa (se si desidera che).

Accesso Destinazione per reindirizzare dopo login sul mio sito; So che ha la capacità di frammenti di utilizzare PHP per creare le condizioni per situazioni specifiche, ma non li ho mai usato.

mi limiterò a mettere questo qui nel modulo di risposta, È possibile utilizzare le regole per fare questo, anche se la regola fornita dal profilo contenuto non è disponibile.

Basta usare il "utente si è connesso" grilletto, aggiungere le condizioni per i campi di interesse di essere vuota e reindirizzamento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a drupal.stackexchange
scroll top