Ein kleiner Hintergrund: Wie Sie auf http://charlotte.ebayclassifieds.com sehen , können Sie das Formular ausfüllen und Inhalte einreichen, ohne sich anmelden zu müssen, wenn Sie auf "Anzeige veröffentlichen" klicken und dann eine Kategorie auswählen. Dies geschieht und wird verwaltet, indem Validierungs-E-Mails an das E-Mail-Adressfeld gesendet werden, in denen ein Benutzer beim Klicken seinen Inhalt bearbeiten kann.
Kann eine ähnliche Funktionalität in Drupal erreicht werden? Es macht mir nichts aus, ein Modul zu schreiben, aber bevor ich es tue, möchte ich sicherstellen, dass ich das Rad nicht neu erfinde.
Ich habe eine Drupal-basierte lokale Kleinanzeigen-Website für meine Community unter http://www.gastonia.com . Die Website wächst im anonymen Verkehr, aber nur wenige Benutzer melden sich zum Posten an. Nach ein paar Feedbackschleifen mit der Community sagen fast alle, dass die einzige Eintrittsbarriere darin besteht, sich für ein Konto anzumelden, E-Mails zu lesen, zu validieren, herauszufinden, wie man navigiert, um eine Anzeige zu schalten usw. - in der Tat gibt es 7 Schritte Dies ist erforderlich, bevor eine Anzeige tatsächlich veröffentlicht wird. Es ist zu viel..
Wir haben die Architektur überarbeitet, um sie auf zwei Klicks zu reduzieren - klicken Sie zum Posten und dann zum Speichern. Insbesondere klickt ein Benutzer auf "Inhalt hinzufügen" und das Formular "Knoten / Hinzufügen" wird angezeigt (in der neuen Architektur gibt es jetzt nur noch einen Inhaltstyp). Wenn sie fertig sind, klicken sie auf Speichern.
Ursprünglich habe ich über das Inline-Registrierungsmodul nachgedacht , aber es ist immer noch in DEV und die Logik ist wirklich nicht da, um zu unterstützen, wenn der Benutzer zurückkommt, um erneut mit derselben E-Mail-Adresse zu posten (ohne Anmeldung). Ich könnte es ändern, aber dann schreiben wir wieder ein Modul.
Ich habe auch über Regeln nachgedacht - könnten Regeln ähnliche Funktionen wie die Website von ebayclassifieds verarbeiten oder was versuche ich zu tun? Alles würde auf einer E-Mail basieren, die im Node / Add-Formular (CRUD-Funktionalität) abgelegt ist.
Welche Richtung oder welches Rezept würden Sie vorschlagen, um die Funktionalität zu erreichen? Das ultimative Ziel hierbei ist natürlich, dass Benutzer nicht mehr posten können. Erstellen Sie ein Konto hinter den Kulissen für die zukünftige Verwendung. Ermöglichen Sie die Verwendung des Anon-Formulars auch für Benutzer mit E-Mails, die bereits über Konten verfügen (und weisen Sie den Inhalt entsprechend zu), und behalten Sie gleichzeitig die Sicherheit (vor Spam, Bots) bei, die sich aus der Anmeldung und Authentifizierung eines Kontos durch einen Benutzer ergibt.
EDIT: 4/1/2013 Gisle Hannemyr hat das Anonymous Publishing-Modul wiederbelebt, das dem Erreichen der hier und in anderen Beiträgen beschriebenen Ziele sehr nahe kommt. Bitte nehmen Sie am Thread teil, um Community-Feedback zu geben, wie Sie das Modul fehlerfrei und besser machen können: http://drupal.org/node/1957644
Antworten:
Ich denke nicht, dass dies nur mit Regeln möglich ist.
Sie müssen das Übermittlungsformular ändern, um die Bestätigungs-E-Mail-Adresse zu erfassen, und Sie benötigen eine Logik, um Spammer zu verbieten und wiederkehrende Besucher zu erkennen.
Ich bin der Betreuer eines Projekts namens Anonymous Publishing . Es sieht so aus, als ob dieses Modul macht, was Sie wollen.
Es befindet sich noch in der Entwicklung, aber eine Drupal 7-Version wurde an mehreren meiner Produktionsstandorte ohne Probleme verwendet. Bitte probieren Sie es aus.
Vielleicht möchten Sie sich auch die Antworten unter dieser Frage ansehen .
quelle
Ähnliches habe ich kürzlich bei einem Projekt erreicht, indem ich einen neuen Menü-Rückruf erstellt habe - so etwas wie
example.com/anon_user
-, der ein Formular bereitstellt, das gleichzeitig als Anmelde- und Registrierungsformular dient. Auf diese Weise kann der Benutzer den Registrierungsprozess sehr schnell durchlaufen ODER sich anmelden, ohne zu viele Aktionen ausführen zu müssen. Es wurde tatsächlich ziemlich gut aufgenommen.Hier ist ein vereinfachter Code, um dies zu demonstrieren:
Validieren Sie es, wie Sie es brauchen:
Im Submit-Handler müssen wir herausfinden, ob diese E-Mail bereits vorhanden ist, und versuchen, sie anzumelden. Wenn sie nicht vorhanden ist, versuchen Sie, ein Konto für sie zu erstellen.
Dies ist ein ziemlich einfaches Beispiel. Sie können Kennwortanforderungen, Kennwortbestätigung über ein zweites Feld, ein Feld für den Benutzernamen, bessere Warnungen usw. hinzufügen. Je mehr Einschränkungen, desto länger der Vorgang. Beachten Sie dies.
quelle
Es gibt viele Möglichkeiten, wie Sie die "Registrierungshürde" senken können:
Um Ihre letzte Frage zu beantworten:
Ich schlage vor, die Funktion "Registrierung anonymer Knoten" zu verwenden (ich kann Code freigeben, wenn Sie möchten). Ich füge einem "Node Add" -Formular die Felder "Name" und "E-Mail-Adresse" hinzu.
Wenn die E-Mail noch nicht vorhanden ist, wird ein neues Benutzerkonto erstellt. Es verwendet den Vornamen, um den Benutzernamen zu erstellen, und fügt bei Bedarf Zahlen hinzu, um ihn eindeutig zu machen.
Das Passwort wird zufällig festgelegt und dem Benutzer angezeigt, nachdem der Knoten mit einem Link zum Ändern des Passworts gesendet wurde.
Außerdem verhindern E-Mail-Bestätigungen nicht, dass sich Spam-Bots anmelden. Ich kann das Spambot- Modul nur empfehlen .
quelle
Es gibt jetzt auch dieses Modul: Erstellen und Registrieren
quelle