User Erstellung + Weiterleitung
Eingetragen von byronic (195)
am 30.03.2010 - 22:45 Uhr in
am 30.03.2010 - 22:45 Uhr in
Weiß jemand wie ich es schaffen kann, dass sobald ich einen User anlege, ich nicht nochmal zu dem User Erstellungs Formular geleitet werde sondern gleich zu seinem Profil?
- Anmelden oder Registrieren um Kommentare zu schreiben
Du kannst über den <?php
am 31.03.2010 - 11:47 Uhr
Du kannst über den
<?php
hook_form_alter()
?>
mit
<?php
$form['#redirect'] = 'user/$uid';
?>
sagen wohin er weiterleiten soll. Dazu musst Du Dir nur die nächste UID aus der Tabelle "users" laden.
Ja, das Problem ist doch,
am 31.03.2010 - 20:04 Uhr
Ja, das Problem ist doch, dass ich die ID doch erst beim hook_user -> insert bekomme, und sie doch gar nicht im form [redirect] setzen kann.
Ich könnt das zwar umgehen indem ich einfach die letzte uid lade und einfach +1 mache, jedoch das Problem bekomme, wenn mehrer leute gleichzeitig User anlegen.
dann mach das doch über
am 31.03.2010 - 20:33 Uhr
dann mach das doch über den
<?php
hook_user();
?>
nach dem
insert
hast du dann das user object zur verfügung und kannst direkt weiterleitenKlapt leider auch net, habs
am 31.03.2010 - 21:18 Uhr
Klapt leider auch net, habs im insert und im after_update mittels drupal_goto() probiert, ohne Erfolg.
ich hab mir mal das Ganze
am 31.03.2010 - 21:37 Uhr
ich hab mir mal das Ganze angeguckt. probier mal folgendes:
<?php
/**
* Implementation of hook_form_alter().
*/
function hook_form_alter(&$form, &$form_state, $form_id) {
if($form_id == 'user_register') {
unset($form['destination']);
}
}
/**
* Implementation of hook_user().
*/
function hook_user($op, &$edit, &$account, $category = NULL) {
if ($op == 'insert') {
drupal_goto('user/' . $account->uid);
}
}
?>
Müsste doch auch mittels
am 05.04.2010 - 15:21 Uhr
Müsste doch auch mittels Rules gehen.
Eine Regel anlegen, als auslöser nimmt man "Benutzer wurde erstellt" oder so ähnlich und dann macht man damit eine Seitenweiterleitung.
Überschreibt diese Rule
am 05.04.2010 - 15:38 Uhr
Überschreibt diese Rule denn die Destination, die im Formular gesetzt ist?
Also ich habe es gerade mal
am 05.04.2010 - 16:11 Uhr
Also ich habe es gerade mal lokal getestet und es hat wunderbar geklappt.
Allerdings muss man (glaube ich) ein Häkchen bei "Erzwingt die Weiterleitung an einen bestimmten Pfad, selbst wenn ein Ziel-Parameter übergeben wird" (bzw. auf Englisch: "Force redirecting to the given path, even if a destination parameter is given") setzen und dann dürfte das klappen.
dann wird dieser haken aber
am 05.04.2010 - 16:59 Uhr
dann wird dieser haken aber nicht anderes machen als wie oben von mir beschrieben die destination zurücksetzen bzw. eliminieren.
Dann fände ich die Rule aber
am 05.04.2010 - 17:37 Uhr
Dann fände ich die Rule aber wesentlich handlicher, als die ganze Quelltext-Arbeit dort oben. Probieren kann er's ja mal.