Zum Hauptinhalt springen
Fast alle Tags dieser Seite bauen Formularfelder. Das klingt eintönig, ist aber der Grund, warum sie so leicht zu lernen sind: Sie folgen fast ausnahmslos demselben Dreierschema. Wer es einmal verstanden hat, kann jedes Feld dieser Seite schreiben, ohne die Einzelbeschreibung zu lesen. Darum steht dieses Schema am Anfang. Danach folgen die Formulare, die daraus entstehen, von der einfachen Anmeldung über die kombinierte Anmeldung im Bestellablauf bis zur Bestätigung der E-Mail-Adresse. Am Ende stehen die Links, die vom Shop ins Kundenkonto führen. Referenz: Der Einstieg in das Präfix WS- und die Übersicht über die acht Seiten stehen auf Shop, Seite und Technik

Das Dreierschema

Zu fast jedem Eingabefeld gehören drei Tags.
Die Endung _error liefert als Einzel-Tag die Zeichenkette _error und sonst nichts. Hängen Sie sie an einen Klassennamen, dann heißt die Klasse bei einem Fehler eingabe_error und sonst eingabe. Damit lässt sich die Fehlerdarstellung vollständig über CSS gestalten, ohne eine zweite Klammerung im Template. Jedes _error-Tag greift zusätzlich als Klammerung, und zwar dann, wenn die Eingabe fehlerhaft ist. Das ist der Weg für eine Fehlermeldung in Worten neben dem Feld.
Die Wertetags geben den zuletzt eingegebenen Wert zurück, damit der Käufer nach einem Fehler nicht alles neu tippen muss. Für Passwortfelder gilt das ebenfalls. Überlegen Sie bei einem Passwortfeld, ob Sie den Wert wirklich zurückschreiben wollen, oder ob ein leeres Feld die bessere Wahl ist.

Anmeldung und Registrierung

Dieselben Felder dienen je nach Vorgang unterschiedlichen Zwecken. Das ist der häufigste Stolperstein auf dem Login-Template.
Das Beispiel auf der bisherigen Seite zu WS-PW zeigt ein input-Element mit type="text". Ein Passwortfeld muss type="password" tragen, sonst steht das Passwort sichtbar auf dem Bildschirm. Die Beispiele zu WS-NewPW und WS-PWAgain machen es richtig. Oben steht die berichtigte Fassung.
Der Unterschied zwischen WS-Email und WS-NewEmail ist nicht Alt gegen Neu, sondern Bestandskunde gegen Neukunde. Auf einem Template, das beide Fälle abdeckt, brauchen Sie beide Felder, und sie dürfen nicht dasselbe name-Attribut tragen. WS-UserID gehört zu Shops, in denen sich der Käufer nicht über seine E-Mail-Adresse anmeldet, sondern über eine vergebene Kennung. Das ist vor allem im B2B-Bereich üblich. In einem Shop ohne diese Anmeldeart bleiben die drei Tags einfach ungenutzt.

Die Passwortampel

WS-SecureLoginConfigurationJS gibt den Inhalt des Abschnitts secure login der Shopkonfiguration als Skript in die Seite aus. Darüber erfährt die Passwortampel im Browser, welche Regeln für ein gültiges Passwort gelten. Ohne dieses Tag kann die Ampel nichts prüfen. Das Tag gehört ausschließlich auf die Templates, auf denen der Käufer ein neues Passwort vergibt, also auf die Registrierung und auf die Passwortänderung. Auf der gewöhnlichen Anmeldeseite hat es nichts verloren.

Passwort vergessen

WS-PWRequestZip erzeugt ein fertiges Eingabefeld für die Postleitzahl. Sie schreiben nur das Tag, nicht das umgebende input-Element. Die zusätzliche Abfrage verhindert, dass jemand allein mit einer erratenen E-Mail-Adresse ein Passwort anfordert. WS-RequestPWLink erzeugt den Link auf die Anmeldeseite für diesen Zweck. Es verhält sich wie WS-LoginLink, legt aber den Vorgang nicht auf den Bestellablauf fest.

Angemeldet bleiben

Ein Käufer, der bei jedem Besuch sein Passwort tippen muss, kommt seltener wieder. Zwei Ankreuzfelder bieten ihm an, angemeldet zu bleiben, und sie unterscheiden sich in einem wichtigen Punkt.
Beide Tags müssen innerhalb des Anmeldeformulars stehen, also innerhalb von FORM-LoginNewUser, FORM-LoginStart, FORM-QuickLogin, FORM-CombinedLogin oder einem anderen Login-Formular. Außerhalb erzeugen sie zwar einen Feldnamen, der aber nie abgeschickt wird.Bieten Sie WS-StayFullySignedIn_input nur an, wenn Sie wissen, dass die Käufer an privaten Geräten einkaufen. In einem Shop, der auch an gemeinsam genutzten Rechnern verwendet wird, ist WS-StaySignedIn_input die richtige Wahl, denn dort schützt die Passwortabfrage vor kritischen Aktionen das Konto.

Erneute Anmeldung vor kritischen Aktionen

WS-UserRequiresReAuthForCritAction greift, wenn drei Dinge zugleich zutreffen: Der Käufer wurde automatisch angemeldet, er hat in dieser Sitzung noch kein Passwort eingegeben, und die Seite erfüllt eines der konfigurierten Kriterien für eine kritische Aktion.
Legen Sie empfindliche Inhalte wie Adressdaten, Bankverbindungen oder die Bestellhistorie in die negative Klammerung. Sonst sieht ein automatisch angemeldeter Käufer sie, ohne sein Passwort bestätigt zu haben. Das Tag ist auf allen Templates zulässig, genau damit Sie es überall dort einsetzen können, wo es nötig ist.

Die kombinierte Anmeldung

Im Bestellablauf wird der Käufer vor drei Möglichkeiten gestellt: Anmelden als Bestandskunde, neu registrieren, oder als Gast bestellen. Weil sich das in einem Formular abspielt, gibt es dafür eine eigene Tag-Familie mit regelmäßigem Aufbau. Die Auswahl besteht aus einem Namen und je Möglichkeit aus einem Wert und einer Markierung: Die Felder folgen wieder dem Dreierschema:
Die E-Mail-Adresse steht nur einmal im Formular, denn sie wird in allen drei Fällen gebraucht. Nur die Passwortfelder unterscheiden sich. Die _radioselected-Tags liefern als Einzel-Tag _checked. Sie gehören deshalb direkt in das input-Element, ohne Attributnamen davor. Als Klammerung greifen sie, wenn die jeweilige Möglichkeit gewählt ist. Damit lässt sich das passende Passwortfeld ein- und ausblenden, so wie im Beispiel.
Alle 18 Tags dieser Familie gelten ausschließlich im Bereich LoginUser des Login-Templates.

Registrierung nach einer Gastbestellung

Hat ein Käufer ohne Konto bestellt, lässt sich ihm unmittelbar danach anbieten, aus den eingegebenen Daten ein Konto zu machen.
Abgefragt wird nur noch das Passwort. Alles andere, von der Adresse bis zur E-Mail-Adresse, hat der Käufer bei der Bestellung bereits eingegeben.
Bieten Sie den Abbruch sichtbar an. Ohne WS-CreateAccountAfterGuestOrder_cancellink bleibt dem Käufer kein Weg aus der Registrierung heraus, und er hat gerade erst bestellt.
Die Tags gelten auf der Loginseite und auf der Bestelleingangsbestätigung. Der Abbruch-Link gilt nur auf der Loginseite.

Anmeldung über ein fremdes Konto

Meldet sich ein Käufer über ein fremdes Konto an, muss das Shopsystem herausfinden, ob dazu schon ein Kundenkonto gehört. Dafür fragt es die E-Mail-Adresse ab und, falls ein Konto existiert, auch das zugehörige Passwort.
Legen Sie das Passwortfeld in {WS-ExternLogin_facebook_Connect_pw_needed}. Gibt es zu der Adresse noch kein Konto, wird kein Passwort gebraucht, und ein trotzdem angezeigtes Feld verwirrt nur.
Achten Sie auf die Groß- und Kleinschreibung: Im E-Mail-Zweig heißt es connect_email, im Passwortzweig Connect_pw mit großem C. Das ist im Shopsystem so hinterlegt.

Die E-Mail-Adresse bestätigen

Im E-Mail-Template steht der Link, der die Adresse bestätigt:
Im Shop steht der Hinweis auf den noch offenen Stand:
WS-EmailVerified ist nur im angemeldeten Zustand aussagekräftig. Legen Sie es in {ST-LoggedIn}, sonst greift die negative Klammerung auch bei jedem nicht angemeldeten Besucher, und der bekommt einen Hinweis zu einem Konto, das er gar nicht hat.
WS-DoubleOptInLink und WS-VoluntaryDoubleOptInVerificationLink gehören in die E-Mail-Templates, die in den Abschnitten NewCustomerDoubleOptInMail, ChangeEmailDoubleOptInMail und CustomerVoluntaryDoubleOptInMail der Shopkonfiguration festgelegt sind. Die beiden Anforderungs-Links gehören in den Shop.
WS-RequestDeleteAccountDoubleOptInEmailLink löst keine Löschung aus, sondern nur den Versand der E-Mail. Gelöscht wird erst, wenn der Käufer den Link in dieser E-Mail anklickt. Formulieren Sie den Text im Template entsprechend, damit niemand den falschen Eindruck bekommt.

Der Registrierungscode

Arbeitet der Shop mit einem Registrierungscode für Neukunden, gibt WS-LoginRegistrationCode den Code aus und klammert danach, ob einer vorliegt. WS-LoginRegistrationCode_error liefert den Fehlerstyle-Suffix. Ist niemand angemeldet und im Konto kein Code hinterlegt, greift das Tag auf den in der Shopkonfiguration hinterlegten Wert zurück.

Das Kundenkonto

Nach einer Neuregistrierung liefern WS-LastLoginDate und WS-LastLoginTime beim ersten Besuch nichts, denn es gibt noch keine frühere Anmeldung. Erst ab der zweiten Anmeldung erscheint der Wert. Ohne Klammerung stünde beim ersten Besuch ein Satz mit leerer Lücke auf der Seite.

Die Anzahl der Bestellungen

Ohne Parameter zählt das Tag alle Bestellungen im aktiven Subshop. Die Klammerung greift, wenn es überhaupt Bestellungen gibt, und berücksichtigt dabei denselben Zeitraum. Die Zählung ist der schnellste Weg, Erstkäufer von Stammkunden zu unterscheiden, ohne die Bestellhistorie zu laden. {!WS-OrderCount(1y)} greift bei jedem, der im letzten Jahr nicht gekauft hat. Es gibt die Kennung des Unterkontos aus und greift als Klammerung, wenn eine vorliegt. In einem Shop ohne Mehrfachkonten bleibt es stumm.
Das Beispiel auf der bisherigen Seite zu WS-UserDownloadLink schreibt <a href="~WS-UserDownloadLink~> ohne schließendes Anführungszeichen. Das zerlegt das Element im Browser. Oben steht die berichtigte Fassung.
Die meisten dieser Links sind nur für einen angemeldeten Käufer sinnvoll. Legen Sie sie in {ST-LoggedIn}, statt sich darauf zu verlassen, dass das Shopsystem den nicht angemeldeten Besucher ohnehin zur Anmeldung schickt. Drei dieser Tags bringen ihre eigene Prüfung mit und greifen zusätzlich als Klammerung. WS-BankManageLink greift nur, wenn das Speichern von Bankverbindungen freigeschaltet ist. WS-SavedBasketsManageLink greift nur bei angemeldetem Käufer. WS-PPCVaultManageLink greift nur, wenn das Hinterlegen von PayPal-Zahlungsmitteln erlaubt ist.
Beide erzeugen eine vollständige Adresse über HTTPS. WS-OSBLink fällt aus der Reihe: Es führt nicht ins Kundenkonto, sondern in den Online-Servicebereich des Shopbetreibers, und es gehört in die Bestelleingangs-E-Mail an den Shopbetreiber. Die Adresse stammt aus der Shopkonfiguration.

Die Kundensuche des SuperUsers

Die Auswahlliste für die Suchart trägt den festen Namen user_search_type. Dafür gibt es kein eigenes Tag. WS-UserSearchType gibt nur den gewählten Wert zurück, damit ein JavaScript die richtige Option wieder markieren kann.Im Shopsystem und in den eigenen Beispielen der Quelle heißt es WS-SuperUserID. Nur diese Schreibweise funktioniert.
Referenz: Die Trefferliste selbst bauen Sie mit den UL-Tags, beschrieben auf UL- (SuperUser)

Die Tags im Überblick

Die Anmelde- und Registrierungsfelder gelten auf dem Login-Template, die CombinedLogin-Familie dort im Bereich LoginUser. WS-BankManageLink und WS-PrimePackagesManage gelten auf der Kundenkontoübersicht, WS-DoubleOptInLink und WS-VoluntaryDoubleOptInVerificationLink in den zugehörigen E-Mail-Templates, WS-OSBLink in der Bestelleingangs-E-Mail an den Shopbetreiber, die Tags der Kundensuche auf deren Template. Alle übrigen sind auf allen Templates zulässig.

Verwandte Themen