Registrierung in zwei Stufen, geht das?
Eingetragen von stone_d (178)
am 26.01.2011 - 15:11 Uhr in
am 26.01.2011 - 15:11 Uhr in
Hi ihrs,
gibt es die Möglichkeit eine Registrierung in zwei Schritten zu machen?
1. Der Kunde gibt seine E-Mail-Adresse und Benutzername ein und hakt die AGB ab. Dann erhält er die Mail zum verifizieren seiner E-Mail-Adresse
2. Nach dem ersten Login MUSS der Kunde die restlichen Profilfelder (Vorname, Nachname, Straße usw.) ausfüllen und wird erst dann als echtes Mitglied (=> Datenbank: Tabelle "user", status = 1) gekennzeichnet.
Gibt es da ne Möglichkeit?
Danke im Voraus und Grüße vom F
- Anmelden oder Registrieren um Kommentare zu schreiben
Du könntest eine neue Rolle
am 26.01.2011 - 15:18 Uhr
Du könntest eine neue Rolle anlegen und dieser die entsprechende Berechtigungen geben. Und mit RULES kannst Du dann eine Regel erstellen, daß diese Rolle einem authentifizierten User zugewiesen wird, wenn die entsprechenden Profilfelder ausgefüllt sind.
Drupal 7 Screencasts in deutsch!
Danke, klingt vom Ansatz
am 26.01.2011 - 16:00 Uhr
Danke, klingt vom Ansatz schonmal gut - aber:
Ich habe ja ein Anmeldeformular ge-themed, auf dem die Profilfelder gelistet und im System als Pflichtfelder gekennzeichnet sind. Soweit ich weiß, kann ich doch nicht zwei verschiedene Anmeldeformulare machen - oder? Bzw. bei der "einfachen" (ersten) Registrierungsstufe die Profilfelder als nicht-Pflichtfelder ausweisen, und in der zweiten (nach dem ersten Login) als Pflichtfelder - oder?
stone_d schrieb Ich habe ja
am 26.01.2011 - 16:34 Uhr
Ich habe ja ein Anmeldeformular ge-themed, auf dem die Profilfelder gelistet und im System als Pflichtfelder gekennzeichnet sind.
Wenn Du bei der Registrierung Pflicht-Profilfelder hast, dann kannst Du Dir das doch eigentlich schenken!? Es muss ja bei der Registrierung ausgefüllt werden.
Bei meinem Vorschlag sind das natürlich keine Pflichtfelder. Einfach Standard: Mail und Nutzername ... Alles andere machst Du dann mit RULES ... Du könntest z.B. festlegen, daß ein authentifizerter User immer auf der Profilbearbeitungsseite landet, wenn kein Wert im gewünschten Profilfeld eingetragen wird.
Damit hättest Du quasi auch ein Pflichtfeld ...
Drupal 7 Screencasts in deutsch!
Oder du machst das ganze mit
am 26.01.2011 - 17:48 Uhr
Oder du machst das ganze mit Content Profiles und ohne die Standard-Profilfelder:
Das Registrierungs-Formular hat dann nur die Felder für Benutzername, eMail und ggf. Passwort und AGB-Checkbox. Damit registriert sich der Benutzer. Nach der Registrierung hat er automatisch die Rolle "authentifizierter Benutzer".
Dann benötigst du z. B. noch die Benutzerrolle "bestätigter Benutzer" oder sowas, wie von Thor vorgeschlagen.
Jetzt erstellst du einen neuen Inhaltstyp, nennst ihn z. B. Profil und markierst ihn als "Content Profile". Diese Markierung bewirkt (unter anderem), dass ein Benutzer lediglich einen einzigen Node dieses Typs erstellen darf.
Diesem Inhaltstyp gibst du nun mittels CCK alle gewünschten Felder - Name, Vorname, Geburtsdatum usw. und kannst sie natürlich auch als Pflichtfelder markieren.
Nun forderst du den Benutzer nach der Registrierung auf, ein Profil zu erstellen. Der Benutzer muss also einen Profil-Node anlegen und alle Pflichtfelder ausfüllen.
Zu guter letzt kannst du dann mit Rules eine Regel erstellen:
Auslöser: "Nach dem Erstellen von neuem Inhalt" - Die Regel wird also ausgelöst, wenn ein Node gespeichert wird.
Bedingung: "Inhalt hat Typ: Profil" - Die Regel wird also nur ausgeführt, wenn ein Profil-Node gespeichert wurde
Aktion: "Benutzerrolle hinzufügen" - Dort wählst du aus, dass der "Autor des Inhalts" die neue Rolle bekommen soll (obwohl das in diesem Fall gleichbedeutend mit "handelnder Benutzer" ist) und wählst die zuvor erstellte Benutzerrolle "bestätigter Benutzer" aus.
Nun können sich deine User mittels Benutzername, eMail und Passwort registrieren und danach ihr Profil ausfüllen. Wenn sie das gespeichert haben (und speichern geht natürlich nur, wenn alle Pflichtfelder ausgefüllt sind), bekommen sie automatisch die Rolle "bestätigter Benutzer" zugewiesen.
Du musst es dann eben so einschränken, dass "authentifizierte Benutzer" lediglich Nodes vom Typ "Profil" erstellen und die CCK-Felder bearbeiten dürfen (letzteres nur, wenn du das CCK-Modul Content Permissions aktiviert hast). Alle weitergehenden Berechtigungen (Inhalte erstellen, Inhalte sehen usw. das liegt an dir, was "unbestätigte Benutzer" dürfen und was nicht) bekommt die Rolle "bestätigter Benutzer".
Zitat: Wenn Du bei der
am 26.01.2011 - 18:13 Uhr
Wenn Du bei der Registrierung Pflicht-Profilfelder hast, dann kannst Du Dir das doch eigentlich schenken!? Es muss ja bei der Registrierung ausgefüllt werden.
Nicht ganz: es geht mir darum den Benutzer bei der Registrierung nicht mit einer Fülle an Feldern zu erschlagen und zu vergrätzen. Mittlerweile ist es ja bei fast jedem Onlineshop und anderen Plattformen so, dass die Erstregistrierung nur aus E-Mail und Benutzername besteht und du beim ersten Login zum Vervollständigen deiner Daten aufgefordert wirst. So eine Lösung finde ich elegant und strebe sie daher an.
Du könntest z.B. festlegen, daß ein authentifizerter User immer auf der Profilbearbeitungsseite landet, wenn kein Wert im gewünschten Profilfeld eingetragen wird.
Vielleicht is der Ansatz der Beste. Das löse ich dann wohl am besten mit Form-Events, wenn ich mich recht entsinne.
Problem bei der Content-Profile-Lösung: ich habe bereits mehrere hundert registrierte Benutzer und eine weitere Anwendung, die auf die Profilfelder zugreift. Da müsste ich zu viel umstellen. Aber danke für die ausführliche "Anleitung", auch wenn ich sie aus o.g. Gründen nicht verwenden kann ....
Danke für eure Antworten. Wenn es interessiert, kann ich ja reinschreiben ob, und wenn ja, wie ich es gelöst habe.
Grüße vom
F
Also ich glaube, es wäre den
am 26.01.2011 - 18:26 Uhr
Also ich glaube, es wäre den vorhandenen Benutzern durchaus zuzumuten, nochmal 3 Minuten darauf zu verwenden, das neue Profil auszufüllen. Und diese Anwendung ein wenig umzuändern dürfte doch auch nicht das Thema sein.