Anzeige
Anzeige
E-Commerce
Artikel merken

Toxid für Oxid: Praktisches Content-Management-System für Online-Shops

Viele Online-Shops behandeln zusätzlichen Content wie zum Beispiel weiterführende Inhalte zu Produkten häufig noch stiefmütterlich. Dabei kommen Differenzierung und Zusatzinformationen bei einer wachsenden Zahl an Mitbewerbern mehr Bedeutung denn je zu. Mit Toxid finden Shopbetreiber eine technische Lösung zur Integration von TYPO3 und auch anderen Content-Management-Systemen in die Shopsoftware Oxid eShop.

5 Min. Lesezeit
Anzeige
Anzeige

Bei vielen Online-Shops trifft man auf ähnliche Voraussetzungen: ein solider Shop, gutes Design, Anbindung an die Warenwirtschaft – kurz: Der Betreiber hat die wichtigsten Hausaufgaben erledigt. Dennoch kommen die Verkäufe oftmals nicht so richtig in Schwung. Manche Shops habe bereits einen weiteren Schritt gemacht und zusätzliche Informationen eingebunden. Aber auch das führt nicht zwangsläufig zum Erfolg, wenn der Shop nach außen zwei vollkommen getrennte Systeme betreibt: ein CMS zur Präsentation der Corporate-Site und ein Shopsystem für den Onlinevertrieb der Produkte.

Mit Toxid finden Oxid eShops Anbindung an CMS wie TYPO3 und WordPress.
Mit Toxid finden Oxid eShops Anbindung an CMS wie TYPO3 und WordPress.
Anzeige
Anzeige

Das Image, das man auf der Hauptseite aufbaut, sucht der Kunde dann im Shop vergebens. Umgekehrt verschwindet der Warenkorb beim Wechsel auf die Corporate-Website oder das Layout wechselt gar komplett – weg ist der Kunde.

Wie man an diesen zwei kurzen Beispielen erkennt, gibt es die unterschiedlichsten Ausprägungen von Content, den man im Shop benötigt. Wird der Inhalt umfangreicher und komplexer, kommt man an einem richtigen Content-Management-System nicht vorbei. Mit Toxid können Betreiber eines Oxid eShop unterschiedliche CMS einbinden.

Anzeige
Anzeige

WAS IST TOXID?

Warum nicht einfach ein CMS-Modul für Oxid entwickeln? Wäre nicht auch der Einsatz einer Shop-Extension für das CMS eine Option? Betrachtet man beispielsweise die beiden Systeme TYPO3 und Oxid eShop, wird schnell ersichtlich, dass eine kaum zu bewältigende Entwicklungsleistung aufzubringen und zudem die Komplexität des Systems zu erhöhen wäre, wenn man den gewünschten Part als Modul beziehungsweise Extension entwickelt.

Anzeige
Anzeige

Setzen Shopbetreiber hingegen eine Schnittstelle ein, so erreichen sie zwar den kompletten Funktionsumfang, haben technisch aber immer noch zwei getrennt laufende Systeme, die sie auch getrennt warten, erweitern und bei Lastspitzen auch skalieren können.

Ursprünglich, der Name verrät es noch, hatten die Entwickler Toxid als Modul zur Verknüpfung von TYPO3 und Oxid eShop geplant. Dank der offenen Architektur ist das Toxid-cURL-Modul inzwischen allerdings mit vielen anderen CMS wie Drupal, WordPress oder Contao im Einsatz.

Anzeige
Anzeige

TOXID IM EINSATZ

Im Grunde gibt es zwei Ansätze zur Integration derartiger Systeme. Zum einen kann man über eine Single-Sign-On-Lösung Shop und Content-Management-System parallel betreiben und lediglich die Informationen im Hintergrund austauschen, die man zur Darstellung benötigt. Zum anderen besteht die Möglichkeit, ein System als Master zu betreiben, das sich um Session-Handling und Interaktion mit dem Benutzer kümmert und das andere System als Erweiterung einbindet.

Diesen zweiten Weg geht Toxid cURL. Dabei fungiert Oxid eShop als das ausliefernde System, mit dem der Benutzer interagiert. Das CMS hingegen stellt die Inhalte fertig gerendert bereit. Alle so generierten Blöcke werden hierbei in einer XML-Struktur erwartet, mittels cURL geladen und schließlich in Oxid eingebunden. Vor der Ausgabe werden die Blöcke noch durch Smarty, die Templating-Engine bei Oxid, gerendert. So lassen sich zum Beispiel Produkte als Content-Element einbinden, deren Konfigurationen der Shop dann dynamisch laden kann.

Der Online-Shop Stempelmeer setzt auf Oxid eShop und TYPO3.
Der Online-Shop Stempelmeer setzt auf Oxid eShop und TYPO3.

INSTALLATION UND SETUP

Um Inhalte mit Toxid cURL in Oxid eShop verfügbar zu machen, installiert man zuerst das Modul. Dieses steht unter MIT-Lizenz auf GitHub [1] zum Download bereit. Die MIT-Lizenz erlaubt den Einsatz mit allen Editionen von Oxid eShop und quasi beliebigen CMS, die eine Struktur wie im Beispiel ausgeben können:

Anzeige
Anzeige
XML
<?xml version="1.0"?>
<toxid>
 <navigation>...</navigation>
 <content>...</content>
</toxid>

Listing 1

Nach dem Upload der Dateien ist es nötig, den Toxid-Autoloader zu registrieren. Dieser dient dazu, auch in älteren Oxid-Versionen sämtliche Dateien des Moduls zentral abzulegen. Dazu muss man die Datei modules/functions.php um die folgende Zeile ergänzen:

Anpassungen in der functions.php
require_once('toxid_curl/toxid_curl_autoloader.php');

Listing 2

Anschließend registriert man Toxid regulär als Modul (Mit der aktuellen Version 4.6 hat Oxid das Modul-Handling übrigens
vereinfacht, sodass es genügt, das Modul nach dem Upload unter
„Erweiterungen>Module“ zu aktivieren):

Modul-Registrierung
oxseodecoder => toxid_curl/core/toxid_curl_oxseodecoder
oxviewconfig => toxid_curl/core/toxid_curl_oxviewconfig

Listing 3

Nun gilt es, das CMS für die richtige Ausgabe zu konfigurieren. Exemplarisch sei hier TYPO3 herausgegriffen.

Anzeige
Anzeige

Toxid cURL funktioniert am besten mit sprechenden URLs, das CMS sollte entsprechend konfiguriert sein. Da statt einer kompletten Seite lediglich Content-Blöcke zur Ausgabe benötigt werden, sieht das TYPO3-Template schematisch wie folgt aus:

TYPO3
lib.nav = HMENU
lib.nav.wrap = <navigation><![CDATA[|]]></navigation>
lib.nav {
 ...
}

lib.content = COA
lib.content.wrap = <content><![CDATA[|]]></content>
lib.content.10 < styles.content.get

page = PAGE
page.typeNum = 1
page.config {
 disableAllHeaderCode = 1
}
page.10 < lib.nav
page.20 < lib.content
page.wrap = <?xml version="1.0" encoding="utf-8"?>

Listing 4

Nachdem das Modul installiert ist und das CMS den Content korrekt ausliefert, muss man die Ausgabe konfigurieren. In der aktuellen Version wird Toxid noch über die zentrale Konfigurationsdatei von Oxid gesteuert, ein Backend hierfür ist bereits in Planung.

Zur Identifikation der CMS-Seiten innerhalb von Oxid dient ein Teil des Pfades aus der URL. Dieser kann je nach Shop variieren und sollte treffend gewählt werden. Hinterlegt ist der Pfad für jede Sprache in der Variable „aToxidCurlSeoSnippet“. Der Key gibt dabei die SprachID aus Oxid an.

Anzeige
Anzeige
PHP
$this->aToxidCurlSeoSnippets = array(
 '0' => 'toxid-curl',
 '1' => 'toxid-curl-en',
);

Listing 5

Der Pfad zum Aufruf des CMS wird im Array „aToxidCurlSource“ definiert:

PHP
$this->aToxidCurlSource = array(
 '0' => 'http://yourcmspage.com/',
 '1' => 'http://yourcmspage.com/en/',
);

Listing 6

Wer möchte, kann die XML-Ausgabe auf einen anderen PageType legen oder für WordPress ein alternatives Template einsetzen. Den zusätzlichen Parameter definiert man in diesem Falle in „aToxidCurlUrlParam“:

PHP
$this->aToxidCurlUrlParam = array(
 '0' => '?type=1',
 '1' => '?type=1',
);

Listing 7

Jetzt lässt sich auch auf die neuen CMS-Inhalte einfach per Smarty im Template zugreifen:

Anzeige
Anzeige
Smarty
[{assign var='toxid' value=$oViewConf->getToxid()}] 
[{ $toxid->getCmsSnippet(content) }]

Listing 8

AUSBLICK

Seit der ersten Version wird kontinuierlich an Toxid cURL gearbeitet. So ist es zum Beispiel inzwischen möglich, mehrsprachige Inhalte zu verknüpfen, übergreifend zu suchen und Produkte als Content-Elemente anzulegen. Auch externe Agenturen haben erste Verbesserungen und Anpassungen an neue Versionen von Oxid eShop eingebracht. Mittlerweile gibt es darüber hinaus diverse Codebeispiele zur Integration weiterer Content-Management-Systeme. Diese werden auf der Seite zum Projekt gesammelt und veröffentlicht [2].

Die nächsten Schritte zur Weiterentwicklung sind geplant:

  • verbessertes Handling für Meta-Daten
  • Konfiguration des Moduls über das Backend
  • Readymade-Templates zur vereinfachten Integration
  • Extension für TYPO3, um Produkte noch einfacher im Content platzieren zu können

FAZIT

Toxid cURL bietet eine einfache und dennoch leistungsfähige Basis für die Integration von Content-Seiten in Oxid eShop via unterschiedlicher Content-Management-Systeme.

Anzeige
Anzeige

Darauf aufbauend ist es möglich, weitere Inhalte und Informationen im Shop zu verknüpfen. So lassen sich beispielsweise kontextabhängig Slider befüllen [3] oder zentral gepflegte Produktinformationen mit mehreren Artikeln verknüpfen. Ebenfalls auf Toxid cURL aufbauend ist ein Landingpage-Modul entstanden. Dieses Modul erlaubt es, Seiten mit viel Content für einzelne Produkte und Produktgruppen aufzubauen, um so Werbeaktionen zu unterstützen.

Toxid ist keine Out-of-the-Box-Lösung, vielmehr ist es als Basis für eigene Entwicklungen anzusehen, mit der sich auf das Unternehmen zugeschnittene Lösungen realisieren lassen und Content-Management-System und E-Commerce-Software zu einer Einheit verschmelzen.

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
2 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

Roman

Hallo Joscha,

schöner Artikel. Wie schätzt du die „Mehrlast“ ein, die OXID zu verwalten hat, wenn ich den Shop als führendes System für die Content-Inhalte nutze?
Ab einer gewissen Userzahl wird es doch sicherlich recht dünn ohne vernünftiges Caching.

Gruß
Roman

Antworten
marmalade

Hallo Roman,

nun, OXID wird ja eben nicht zum führenden System für die Inhalte, sondern das übernimmt das CMS im Hintergrund. Diese werden ja nur durch OXID durchgeschleust und gegebenenfalls angereichert.

Bei entsprechender Last, da hast du natürlich vollkommen recht, sollte man entsprechend cachen – mit oder ohne TOXID. Das nimmt sich also nichts.

Gruß Joscha

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