Anzeige
Anzeige
Software & Entwicklung
Artikel merken

TYPO3 und xt:Commerce synchronisieren: Aus zwei mach eins

Zwei unterschiedliche Systeme, zwei unterschiedliche Communitys – und doch werden TYPO3 und xt:Commerce auf vielen Internetseiten gemeinsam und erfolgreich eingesetzt. Es liegt also nahe, Tools für eine bessere Kommunikation und Integration beider Systeme zu entwickeln. Dieser Artikel beschreibt die Synchronisation der Benutzerdaten aus dem Frontend sowie die Integration eines Single Sign-on zwischen TYPO3 und xt:Commerce.

4 Min. Lesezeit
Anzeige
Anzeige

Ein CMS mit Benutzerbereich und integriertem Online-Shop – so sieht eine typische Kundenanforderung aus, mit deren Umsetzung Internetagenturen häufig beauftragt werden. Fällt die Entscheidung auf TYPO3 in Kombination mit xt:Commerce, so erweitert sich die Anforderung, da die Nutzerdaten beider Systeme konsistent gehalten werden müssen. Das ist auch sinnvoll, da jeder Nutzer sonst zwei unterschiedliche Registrierverfahren auf einer Internetseite durchlaufen müsste.

Kurzbeschreibung

Anzeige
Anzeige

Die Extension „edit_xtcuserregister“ synchronisiert bei der Neuanlage (Registrierung) und der Änderung der Frontend-Benutzerdaten in TYPO3 oder xt:Commerce den Benutzereintrag in beiden Systemen. Der Login wurde ebenfalls angepasst: Das Einloggen eines Benutzers in TYPO3 sorgt automatisch dafür, dass der Benutzer auch in xt:Commerce eingeloggt ist (Single Sign-on). Das gilt analog auch für das Einloggen in xt:Commerce. Darüber hinaus wird für die Registrierung in TYPO3 das Feld „Umsatzsteuer-Ident-Nummer“ zur Verfügung gestellt. Das Feld wird, wie auch in xt:Commerce, über das Gateway vom Bundesamt für Finanzen geprüft.

Die Erweiterung besteht also zum einen aus der TYPO3-Extension, zum anderen aus einem xt:Commerce-Modul. Mit der Installation wird die Synchronisation der Benutzerdaten zwischen TYPO3 und Shopsystem möglich, außerdem ist die Registrierung und Anmeldung nur noch bei einem der beiden Dienste erforderlich.

Anzeige
Anzeige

Schnittstellen

Das Konzept für die Synchronisation setzt auf den bewährten Funktionalitäten beider Systeme auf. Auf die Entwicklung separater Registrier- oder Login-Extensions für TYPO3 oder eigenständiger Module für xt:Commerce wurde von Beginn an verzichtet.

Anzeige
Anzeige

Für TYPO3 fiel die Wahl auf die Extension „sr_feuser_register“, die standardmäßig für die Registrierung von Frontend-Benutzern in TYPO3 eingesetzt wird. Durch das integrierte Hook-Konzept stellt „sr_feuser_register“ bereits alle funktionalen Schnittstellen für die Synchronisation zur Verfügung. Da die Login-Funktionalität bereits im TYPO3-Core-System enthalten ist, musste keine spezielle Login-Extension für das Single Sign-on erweitert werden.

Bei xt:Commerce fehlen solche einfachen Erweiterungsmöglichkeiten: Hook-Konzepte gibt es nicht, und separate Module für Registrierung oder Login stehen nicht zur Verfügung. Die meisten Erweiterungen werden durch direkte Veränderungen in den Systemdateien installiert. Insgesamt sieben Systemdateien von xt:Commerce mussten für das Modul „edit_xtcuserregister“ angepasst werden. Die Änderungen in diesen Dateien sind allerdings sehr übersichtlich, da die wesentlichen Funktionalitäten in separate PHP-Dateien ausgelagert sind, die im Verzeichnis „typo3link“ abgelegt wurden.

Anzeige
Anzeige

Kommunikation

Die gesamte Kommunikation zwischen TYPO3 und xt:Commerce wird über die PHP-Extension „cURL“ gesteuert. Bei der Wahl eines Providers muss beachtet werden, dass „cURL“ nicht immer zur Standardinstallation von PHP gehört.

Ablauf der Registrierung aus TYPO3

Der Ablauf der Registrierung ist für die Extension „edit_xtcuserregister“ nicht fest vorgeschrieben. So kann zum Beispiel über die Extension „sr_feuser_register“ nach dem Erfassen der Benutzerdaten eine E-Mail mit einem Aktivierungslink zur Bestätigung der Registrierung versendet werden. Der Registrierungsprozess würde dann wie folgt aussehen:

Ablauf der Registrierung aus xt:Commerce

xt:Commerce bietet nicht so umfangreiche Einstellungsparameter für die Registrierung wie TYPO3. Bestimmte Pflichtfelder sind vorgeschrieben, und einige optionale Felder können aktiviert beziehungsweise deaktiviert werden. Nach Abschluss der Registrierung versendet xt:Commerce eine E-Mail über die erfolgreiche Anmeldung im System, ein Aktivierungslink zur Bestätigung der Registrierung ist nicht vorgesehen.

Anzeige
Anzeige

Das „edit_xtcuserregister“-Modul schaltet bei der Registrierung den Versand der E-Mails von xt:Commerce vollständig ab. Das hat den Vorteil, dass alle E-Mails für die Registrierung nur noch über das flexiblere System von TYPO3 versendet werden.

typo3link/t3sync_account.php
function T3CreateAccount()
{
	$GLOBALS['skip_create_account_email'] = true;  //false = Mail wird versendet
}

Listing 1

Im Codebeispiel ist der Versand von E-Mails aus xt:Commerce deaktiviert.
Über TYPO3 wird eine E-Mail mit Aktivierungslink für die Bestätigung
der Registrierung versendet. Soll die E-Mail-Funktion von xt:Commerce wieder aktiviert werden, so
muss die Variable „skip_create_account_email“ in der Datei
„typo3link/t3sync_account.php“ auf false gesetzt werden.

Single Sign-on

Voraussetzung für die Single-Sign-on-Funktionalität ist, dass beide Systeme unter derselben Internet-Domain erreichbar sind. Nach der Installation ist die Login-Funktionalität in xt:Commerce standardmäßig aktiviert. Soll der Login komplett deaktiviert werden, so muss die Variable „Typo3LoginEnabled“ in der Datei „typo3link/t3sync_config.php“ auf false gesetzt werden.

Anzeige
Anzeige
typo3link/t3sync_account.php
$Typo3LoginEnabled = false; //true aktiviert den Single Sign-on bei xt:Commerce

Listing 2

In TYPO3 ist der Login direkt bei der Installation der Extension „edit_xtcuserregister“ konfigurierbar.

Installation und Konfiguration

Die Extension „edit_xtcuserregister“ wird über den Extension Manager von TYPO3 installiert. Im „res“-Verzeichnis der Extension liegt auch das Installationspaket für xt:Commerce (xtc.zip), dessen Installation genau wie bei anderen xt:Commerce-Modulen durchgeführt wird. Alle Installations- und Konfigurationsschritte sind ausführlich in der beigelegten Dokumentation beschrieben, auf der Internetseite des Herstellers wurden außerdem ein Testsystem sowie ein Forum für Fragen und Anregungen [1] eingerichtet.

Für die Installation in TYPO3 muss die Extension „sr_feuser_register“ in der Version 2.5.1 installiert sein, da in der neueren Version 2.5.8 die Softwarestruktur verändert wurde. Ein kompatibles Update von „edit_xtcuserregister“ soll Ende Mai 2008 veröffentlicht werden.

Anzeige
Anzeige

Beispielprojekt badgepoint.com

Auf der Internetseite der Firma badgepoint Namensschilder Systeme GmbH wurde die Extension „edit_xtcuserregister“ zum ersten Mal für den regulären Betrieb installiert. Die Registrierung in xt:Commerce wurde komplett abgeschaltet und durch eine zentrale Registrierung in TYPO3 ersetzt, die sowohl für das Portal als auch für den Shop gilt.

Fazit

Mit der Extension „edit_xtcuserregister“ ist es möglich, Frontend-Benutzerdaten zwischen TYPO3 und xt:Commerce zu synchronisieren. Allein das Design der Internetseite entscheidet darüber, ob der Nutzer tatsächlich zwei unterschiedliche Systeme wahrnimmt.

Mehr zu diesem Thema
Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
3 Kommentare
Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Axel Arnold Bangert

Sehr geehrter Herr Schild,
zunächst vielen Dank für die wirklich ausführlich und sehr schöne Anleitung zur Integration von Typo3 und XTCommerce.

Dürfte ich höflich noch eine Bitte äußern. Wo könnte man die erwähnte Dokumentation finden(vgl. ganz unten)?

Im Extension Ordner kann ich sie nicht finden. Das ist bei mir: „C:\inetpub\wwwroot\GimbaTypo3\typo3conf\ext\edit_xtcuserregister\res\xtc“

…der Extension liegt auch das Installationspaket für xt:Commerce (xtc.zip), dessen Installation genau wie bei anderen xt:Commerce-Modulen durchgeführt wird. Alle Installations- und Konfigurationsschritte sind ausführlich in der beigelegten Dokumentation beschrieben,…

Beste Grüße und herzlichen Dank
ihr
Axel Arnold Bangert

Antworten
Axel Arnold Bangert

ich denke, dass es das ist:
http://typo3.org/documentation/document-library/extension-manuals/edit_xtcuserregister/1.0.5/view/1/6/
Beste Grüße
Axel Arnold Bangert, Herzogenrath

Antworten
Michael Schild

Hallo Herr Bangert,

wie ich sehe haben Sie schon alles gefunden – oder?

Beste Grüße
Michael Schild

Antworten

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Anzeige
Anzeige