OXID Enterprise Caching

Der Oxid eShop bietet in der Enterprise Version eine ausgefeilte und flexible Caching Strategie an. Es gibt die Möglichkeit, verschiedene Caching-„Backends“ zu nutzen bzw. auch eigene Backends zu implementieren. Gecached werden können theoretisch sämtliche Shop-Klassen, um z.B. konkret Startseite, Kategorieübersichten oder Detailseiten usw. zu cachen und damit als (weitgehend) „statisches“ HTML auszuliefern, um die Shop-Performance zu steigern.

Die gewünschten Klassen können im Shop-Admin unter „Stammdaten – Caching“ eingetragen werden. Standardmäßig ist im Shop als Caching-Backend der „OXID eShop Disk Storage Cache“ verfügbar, der die Cache-Daten als „.cache“-Dateien im „/tmp“-Verzeichns des Shops ablegt und eine Referenz darauf in der „oxcache“-Datenbanktabelle einträgt. Hat man auf dem Server die „Zend Plattform“ installiert, so steht auch ein Zend Cache-Backend zur Verfügung. Es ist aber auch problemlos möglich, eigene Backends einzusetzen, die lediglich ein bestimmtes Interface implementieren müssen und damit Methoden zu bieten, Daten im Cache zu speichern, wieder auszulesen und schliesslich auch wieder zu löschen. Exemplarisch sei hier ein „Memcached„-Backend genannt, das Shoptimax für einen Kunden umgesetzt hat, um das Caching effizienter zu machen und für verteilte Shop-Server (Loadbalancer/Cluster) mit verteilten tmp-Verzeichnissen zu optimieren – hier hat man sonst eine hohe sog. „Cache Miss“-Rate (und dadurch letztlich eine schlechtere Performance), da die „.cache“-Dateien zwar in der Datenbank noch referenziert werden, teilweise aber im Dateisystem nicht gefunden werden, da sie unter Umständen nicht auf demselben Cluster-Server im dortigen „tmp“-Verzeichnis des Shops liegen, auf dem auch der Shop-Kunde aktuell mit dem Browser „gelandet“ ist.

Nicht immer sollen jedoch komplette Shop-Seiten gecached werden, Informationen wie Warenkorbinhalt, Login-Name, Verfügbarkeitsanzeigen usw. sollen natürlich immer aktuell sein. Zu diesem Zweck „injiziert“ der Oxid EE Shop in die gecachten Seiten dynamische „Snippets“, dafür sorgt die Smarty-Funktion „oxid_include_dynamic„. Diese inkludiert Smarty Template-Schnippsel (normalerweise aus dem „out/basic/tpl/dyn“ Verzeichnis) in die gewünschte Seite bzw. das gewünschte Template. Hier ein Beispiel das die Warenkorbinhalte dynamisch einbindet:

[{oxid_include_dynamic file=“dyn/mini_basket.tpl“ type=“basket“ extended=true testid=“RightBasket“}]

Wichtig ist hierbei, dass an ein solches „dynamisches“ Template kein Objekt als Argument übergeben werden kann, wie dies bei normalen Templates der Fall ist, also z.B. ein “ … product=$product …“ o.ä ist hier nicht möglich. Stattdessen muss in einem solchen Fall z.B. ein String oder Integer-Wert übergeben werden wie etwa die Produkt-Id, im Beispiel also etwa “ … productid=$product->oxarticles__oxid-value …“. Hintergrund ist, dass die Parameter-Werte per base64_encode() und base64_decode() umgewandelt und übertragen werden. Um den übergebenen Parameter dann auszuwerten und z.B. das gewünschte Objekt zu erzeugen/laden und wiederum im Template zur Verfügung zu stellen, ist es nötig, die Funktion oxCache::_processDynContent() per Modul zu überschreiben und mit der gewünschten Logik zu erweitern. Um auf die übergebenen Parameter direkt im inkludierten, dynamischen Template zugreifen zu können, muss man zudem einen Unterstrich (Underscore) „_“ davor setzen, im Beispiel also [{$_productid}], da in der Methode oxCache::_processDynContent() alle Variablen mit diesem Prefix versehen und wieder in das Template geschrieben werden.
Will man aus irgendwelchen Gründen Template-Logik nur bei aktivem Caching einbinden, kann man die Variable $_render4cache abfragen, die in diesem Falle in allen Templates verfügbar ist:

[{if $_render4cache}]
Sie sehen eine gecachte Version der aktuellen Seite!
[{/if}]

Fazit: Für größere Shops mit sehr vielen Kategorien und/oder Artikeln ist Caching im OXID eShop eigentlich unerlässlich, wir konnten in manchen Shops und mit bestimmten Shop-Klassen eine Performance-Steigerung um den Faktor 5 feststellen – nicht nur im Hinblick auf Google-Ranking von Vorteil, sondern generell für die Usability und Akzeptanz des Shops durch die Kunden.

The post Oxid Enterprise Caching appeared first on shoptimax – Perfekte E-Commerce Lösungen.

NodeJS auf Profihost Expert Webhosting installieren

Wenn es um Hosting für einen OXID Shop geht, zählt Profihost zwar nicht zu den günstigsten, dafür aber zu den verlässlicheren Hostern. In den „Expert“ Tarifen erhält man sogar einen SSH Zugriff, mit dem sich das Leben deutlich leichter gestaltet, als mit einem FTP Zugang.
Vorweg: ich kann mit Linux gerade so viel anfangen, wie ich muss und um vim zu verlassen, muss ich die Verbindung trennen.
Nach 2 Flaschen Weißwein und mehreren Versuchen in der Vergangenheit ist es mir heute Nacht nun endlich gelungen, NodeJS erfolgreich zu installieren.

Was ist daran nun besonders?

Die SSH Console vom Profihost erlaubt keine Installation der Software über einen Paket-Manager und für die üblichen Installations-Scripts aus dem Internet fehlt dem SSH Benutzer jede Menge Berechtigungen.
Über NVM lässt sich NodeJS zwar installieren, aber NVM unterstützt keine Prefixes und Symlinks, weswegen man am Anfang jeder SSH Session erst mit 3-5 Befehlen NodejS „wiederherstellen“ muss.

Und so gehts:

  1. als erstes wird NVM installiert:

    hiernach muss die SSH Session neu verbunden werden.
  2. als nächstes installieren wir NodeJS über nvm:
  3. dann müssen wir herausfinden, wo NodeJS binary liegt:

    dabei kommt vermutlich so etwas raus:
  4. Den mittleren Teil fügen wir ans Ende der .profile Datei im Home Verzeichnis ein:

    mit diesem Entscheidenden Befehl weiß die Console nun immer, wo sie nach nodejs suchen soll.

Am Anfang jeder SSH Session erscheint zwar die Fehlermeldung von NVM:

Diese kann nun aber ignoriert werden.

OXID eShop RDFa

Mit strukturierten Daten, beispielsweise nach schema.org, kann das Suchergebnis in der Google-Suche „aufgepeppt“ werden. Wie das Suchergebnis anschließend aussehen kann, sieht man in der Google Search Gallery.

Viele Content Management Systeme (CMS) und Onlineshopsysteme, wie auch OXID eShop, stellen bereits strukturierte Daten zu Verfügung.

Was ist RDFa

RDF bedeutet Resource Description Framework.
RDFa = Resource Description Framework in Attributes.

RDFa bettet RDF-Ausdrücke in eine bereits vorhandene Sprache wie beispielsweise HTML ein und kann von Computerprogrammen wie beispielsweise einer Suchmaschine gelesen wesen.

Wir strukturieren unsere Webseite deswegen mit RDFa (oder auch Microdata oder Mikroformaten), damit eine Suchmaschine einzelne Daten daraus erfassen kann. Dabei greift RDFa auf ein oder mehrere Vokabulare zurück. Wie beispielsweise das von schema.org.

Man könnte also sagen wir übergeben Informationen , innerhalb des Quellcodes, nach einem vordefinierten Standard.

OXID und schema.org

Strukturierte Daten in OXID eShop

OXID verwendet bereits strukturierte Daten, die sich im Admin Panel unter Stammdaten -> Grundeinstellungen -> RDFa einstellen lassen. OXID verwendet standardmäßig das Schema (Vokabular) von „Good Relations“ um Informationen über Produkte, Preise, Verfügbarkeit oder auch Firmendaten bereitzustellen.

rdfa_oxid

Ausführliche Informationen zu RDFa und Good Relations in OXID findet ihr hier.

Also hat OXID bereits strukturiete Daten?
Ja OXID verwendet bereits strukturierte Daten. In diesem Beitrag geht es darum, Strukturierte Daten mit schema.org in OXID zu verwenden.

Warum?
Nach einigen Recherchen wollte ich für die Suchmaschine Google „Rich Cards“, also die „schönere Suchergebnis-Ansicht“ verwenden und beschäftigte mich ein wenig mehr mit der Materie der RDFa Daten.

Da ich selbst bisher keine Erfahrung auf diesem Gebiet hatte versuchte ich die Empfehlungen von Google umzusetzen. Inklusive der Benutzung des schema.org’s Vokabular unter der Verwendung von Mikrodaten, da Google diese gegenüber des JSON-LD-Markup (das man ebenfalls verwenden kann) laut Google Support, präferiert.

Ebenso wollte ich die strukturierten Daten um einige Punkte ergänzen. Die ich in schema.org sofort fand und bei „Good Relations“ erst suchen musste – oder gar nicht fand.

OXID RDFa bearbeiten

Die bestehenden Datei, die eure RDFa-Daten bereitstellt, findet ihr in der Regel in eurem Theme-Ordner unter RDFa. Wenn ihr dort mehrere Dateien findet, wird zwischen Product, Organisation, Infos oder Ähnlichem unterschieden.

Ein Beispiel-Markup für ein Produkt unter der Verwendung der Struktur von schema.org findet ihr hier: https://schema.org/Product

Diese Daten lassen sich natürlich je nach Bedarf erweitern oder reduzieren.

Die Daten die ihr an Google übergebt sollten im Test-Tool für strukturierte Daten so aussehen:

Ich habe für dieses Beispiel den Typ Product, die URL zum Produkte, die URL zum Bild (image), die Artikelbezeichnung (name), die Artikelbeschreibung (description), die Artikelnummer (sku), die GTIN (gtin13), das Rating unter aggregateRating (mit ratingCount – Abstimmungsanzahl & ratingvalue – dem Wert), sowie die offers (Preis, Währung, Kategorie, Zustand und Lieferbarkeit).

Und die Daten die Google bekommt, beziehungsweise das Ergebnis, sollte im Test-Tool dann so angezeigt werden.

Google RDFAScreenshot: Test-Tool für strukturiete Daten | Google

WICHTIG: Bitte arbeitet mit einem Child-Theme. Bei einem Update des genutzten Themes wird eure Datei dann nicht überschrieben!

Ich habe für diesen Test mein Child-Theme vom Azure genutzt. Ihr findet die RDFa-Dateien in dem Azure-Theme Ordner unter RDFa. Die bearbeitete Datei für diesen Test heißt: details.tpl und befindet sich im Ordner details.

 

Wir bereits beschrieben lassen sich weitere Punkte ergänzen. Dieses Snippet dient nur als Beispiel und die Benutzung erfolgt auf eigene Gefahr. Ein Child-Theme ist empfehlenswert.

Über Verbesserungsvorschläge zu diesem Beitrag freue ich mich natürlich und werde einzelne Punkte gerne ergänzen.

Weitere Infos von Google zum Markup findet ihr unter diesem Link:
https://support.google.com/webmasters/answer/3069489?hl=de

nodejs LESS compiler für OXID Themes

Mit dem neuen Flow Theme von OXID haben wir nun endlich auch LESS Stylesheets, dank denen man mit wenig Aufwand den Shop z.B. farblich komplett umgestalten kann.
Die beigefügten Scripts zum Kompilieren dieser LESS Dateien benötigen jedoch einige, sonst komplett unnütze Programme, die man erst installieren und verstehen muss.

LESS ganz einfach automatisch kompilieren

Es geht aber auch einfacher und voll automatisch. Wie? Das erkläre ich jetzt.
Zunächst ein mal wird Node JS benötigt, genau so wie bei den mitgelieferten Scripts.
Nicht mehr benötigt werden Grunt, all seine Extras, Zusatzfunktionen und natürlich die Einarbeitungszeit.

Installation:

  1. Lade less.js und package.json von hier herunter: https://github.com/vanilla-thunder/nodejs-less-compiler/
  2. Lade diese beiden Dateien in den out/ Ordner in deinen Shop hoch
  3. Node JS Compiler installieren:

    Falls dein Shop mit git/svn versioniert wird, musst du eine Ausnahme für out/node_modules/ hinzufügen

LESS Datei vorbereiten

Du kannst entweder flow.less aus dem Ordner application/views/flow/build/less/ kopieren oder eine neue Datei erstellen und flow.less importieren.
Diese Zeile reicht schon völlig aus:

Konfiguration:

In less.js findest du in den zeilen 9-14 folgende Konfigurationparameter:

  • $theme: Name deines child Themes oder auch „flow“, falls du direkt an flow arbeitest
  • $vendor: relativer Pfad zu den less Dateien im Flow. Müsste so stimmen.
  • $watch: relativer Pfad zum Ordner mit deinen less Dateien. Dieser Ordner wird überwacht und bei Änderungen automatisch neu kompiliert.
  • $source: deine less Haupt-Datei.
  • $target: die Ausgabedatei
  • $minify: soll die css Ausgabe minimiert werden? (nur für live Betrieb nötig)

Nutzung:

Den Script startest du so:

Dann sollte in der Shell Console sowas auftauchen:

Das wars schon, ab jetzt werden Änderungen an Dateien im out/pow3r/src/less/ Ordner automatisch erkannt und die Datei styles.less kompiliert.
In diesem Beispiel habe ich ein Child Theme „pow3r“ auf Basis von flow.

Cache „vorwärmen“ mit psCacheWarmer

In vielen Online-Shops ist ein Cache keine Seltenheit mehr. Sofern beim jeweiligen Caching-Modul/System keine Logik vorhanden ist nur spezielle Seiten aus dem Cache-Index zu entfernen müssen meist alle gecachten Dateien gelöscht werden.

Dies führt natürlich dazu dass alle relevanten Cache-Files auch wieder generiert werden müssen. Um diesen Prozess automatisiert und vorweg zu nehmen nutzen wir das kostenlose OXID Open-Source Modul psCacheWarmer. Zufälligerweise haben wir auch das passende OXID Cache-Modul psCache im Angebot. 😉

Da in manchen Shops die meist vorhandene Löschlogik nicht gewünscht oder genutzt werden kann ist psCacheWarmer die perfekte Ergänzung zum den Cache „vozuwärmen“. Hierbei greift das Modul den Inhalt der XML-Sitemap zu und ruft eine URL nach der anderen (per CURL) auf. Aus Sicherheitsgründen kann nur auf eine Sitemap innerhalb der Shop-URL zugegriffen werden. Es ist jedoch möglich einen Basic-Auth Benutzer/Kennwort zu hinterlegen und das Modul gesichert per Cronjob aufzurufen.

Die Erweiterung kann auf Github heruntergeladen werden: https://github.com/proudcommerce/psCacheWarmer

HowTo: Von XML nach SQL

Wer mit Content-Managment-Systemen oder Onlineshopsystemen wie beispielsweise Oxid eShop arbeitet, und eine große Datenmenge von einer XML-Datei in eine SQL-Datenbank schleusen muss, steht oft vor einem Problem. Neben „XML Importer Plugins“ und angepassten Snippets, die mal mehr und mal weniger gut funktionieren gibt es kaum Anleitungen zu diesem Thema.

Daher möchte ich in diesem Beitrag zeigen wie Sie Ihre Daten aus der einer XML-Datei mithilfe von PHP in Ihre SQL-Datenbank übertragen.

Anleitung: PHP > XML nach SQL Importer

(Ein gewisses Grunverständnis vorausgesetzt.)

Als erstes erstellen wir die Verbindung zur Datenbank. Die Felder „servername“, „username“, „passwort“ und „datenbankname“ werden natürlich mit den Daten eurer Datenbank gefüllt.

Nachdem wir nun die Datenbankverbindung erfolgreich hergestellt haben nutzen wir die PHP-Funktion „simplexml_load_file“ um unser XML-Dokument, dass wir in die Datenbank übertragen möchten, in ein Objekt umzuwandeln.

Ersetzen Sie „meineliste.xml“ durch den Pfad zu Ihrer XML-Datei.

Zum Verständnis einmal eine simple XML-Datei. Die Struktur Ihrer XML-Datei sieht natürlich anders aus. Als nächste beschäftigen wir uns damit, wie Sie die Daten aus Ihrer XML-Datei auslesen und in die richtige Spalte Ihrer Datenbank schreiben.

In dem folgenden Beispiel gehe ich davon aus, dass die Spalten der Datenbank (meinetabelle) folgende Namen haben: „ID“, „Titel“ und „Preis“. Wir nutzen eine „foreach-Schleife“ um für jedes Buch die Daten in die richtige Spalte der Daten zu schreiben.

Wenn Sie diese Datei nun auf Ihren Server laden und ausführen werden alle Daten von dem XML-Dokument in Ihre Datenbank übertragen.

Bild: XML in DB
Dieser Code ist nun natürlich beliebig erweiterbar. Sie könnten nun beispielsweise auch innerhalb der Schleife, den Titel jedes übertragenen Buches ausgeben. Oder die übertragenen Datensätze zählen.

Wenn Ihnen dieses Snippet geholfen hat oder Sie Anregungen haben würde ich mich über einen Kommentar oder einen „like“ natürlich freuen.

Tutorial: Pflichtfelder für Kunden ändern in OXID eShop

OXID Shop RegistrierungPflichtfelder in Formularen sind Felder, die Kunden (Besucher) zwingend ausfüllen müssen. Wenn sich ein Neukunde in einem OXID Onlineshop registriert (oder bestellt), machen Pflichtfelder Sinn, denn so lässt sich sicherstellen, dass die Adresse vollständig ist und die Bestellung rasch ausgeliefert werden kann.

In OXID Shops sind Pflichtfelder für die Registrierung bzw. Bestellung bereits voreingestellt.

Manchmal ist es aber auch nötig, diese Pflichtfelder für den eigenen Shop anzupassen, also andere Felder zusätzlich zur Pflicht zu machen oder Pflichtfelder zu entfernen. Das geht in OXID relativ easy – wenn man weiß wie (und das erkläre ich  jetzt).

So ist es per Voreinstellung

Wenn sich ein Kunde in einem OXID Shop registrieren will, muss er standardmäßig folgende Felder ausfüllen:

Vorname, Nachname, Straße + Hausnummer, PLZ + Ort + Land

Und natürlich E-Mail und Passwort, die sind ja notwendig, damit der Kunde sich später wieder im Shop anmelden kann. Da das aber immer so ist, bleiben die jetzt mal bei unserer Betrachtung hier außen vor.

Auch wenn der Kunde eine abweichende Lieferadresse angeben möchte, gelten dafür die oben genannten Felder als Pflicht.

Pflichtfelder in OXID ändern

Sie können diese Pflichtangaben ganz einfach selbst anpassen.

Gehen Sie im Shop-Backend auf Stammdaten → Grundeinstellungen . Klicken Sie auf den Tab „Einstell.“ und öffnen Sie ganz unten die Gruppe „Weitere Einstellungen„.

Gleich das erste Eingabefeld ist beschriftet mit „Muss“-Felder für die Registrierung des Kunden.

Auf den ersten Blick ist der Inhalt dieses Feldes sehr kryptisch und unverständlich (und auf den zweiten meist auch). Aber keine Angst – das ist gar nicht so schwer, wie es aussieht.

Diese Worte bezeichnen nämlich die Tabelle und die Spalten in OXID, die als Pflicht gesetzt sind. Der Tabellenname steht dabei vor dem Unterstrich, der Spaltenname danach.

oxuser__oxlname steht so z. B. für die Tabelle oxuser und die Spalte oxlname. Welche Felder es gibt, habe ich unten zusammengestellt.

Und noch eine wichtige Regel: Pro Pflichtfeld eine Zeile. Wenn Sie neue hinzufügen, fügen Sie also immer eine neue Zeile hinzu, wenn Sie ein Pflichtfeld entfernen, löschen Sie die gesamte Zeile.

Und so fügen Sie ein Pflichtfeld hinzu (oder entfernen eins)

Wenn Sie sich die Einträge genauer anschauen, werden Sie feststellen, dass es eigentlich nur zwei verschiedene Tabellen gibt: oxuser (Stammdaten des Kunden) und oxaddress (Lieferadressen des Kunden). Und noch was erleichtert uns die Arbeit enorm: Die Spalten in oxuser und oxaddress heißen gleich, zumindest die, auf die es uns ankommt.

Folglich können Sie hier nun weitere Pflichtfelder hinzufügen, indem Sie diese einfach als neue Zeilen anhängen. Wichtig dabei ist (wie eben schon erwähnt), dass wirklich jedes Feld in einer neuen Zeile steht und achten Sie unbedingt auf die korrekte Schreibweise! Die Reihenfolge spielt übrigens keine Rolle.

Umgekehrt lassen sich Pflichtfelder ganz einfach löschen, indem Sie die Zeile(n) entfernen. Nicht die Eingabefelder werden dabei gelöscht, sondern nur der Status „Pflicht“. Die Felder können dann noch ausgefüllt werden, müssen es aber nicht.

Die wichtigsten Spalten in OXID eShop

Nun braucht man nur noch wissen, wie die Spalten heißen, die die gewünschten Informationen enthalten. Dafür habe ich Ihnen eine Übersicht erstellt.

Rechnungs-Adresse

oxuser__oxfname Vorname
oxuser__oxlname Nachname
oxuser__oxstreet Straße
oxuser__oxstreetnr Hausnummer
oxuser__oxzip Postleitzahl
oxuser__oxcity Stadt
oxuser__oxcountryid Land
oxuser__oxfon Telefonnummer

Liefer-Adresse

oxaddress__oxfname Vorname
oxaddress__oxlname Nachname
oxaddress__oxstreet Straße
oxaddress__oxstreetnr Hausnummer
oxaddress__oxzip Postleitzahl
oxaddress__oxcity Stadt
oxaddress__oxcountryid Land
oxaddress__oxfon Telefonnummer

Sollten Sie noch ein Feld vermissen, schreiben Sie mir einfach einen kurzen Kommentar, ich ergänze das dann.

Und noch ganz wichtig

OXID markiert die Pflichtfelder und prüft die Eingabe vollautomatisch. Aber: Stellen Sie sicher, dass Ihr Formular die Pflichtfelder überhaupt enthält, denn OXID ergänzt diese nicht von sich aus! Gerade bei angepassten Themes kann es z. B. sein, dass das Feld für die Mobilnummer entfernt wurde. Wenn Sie es nun als Pflichtfeld setzen, prüft OXID es, obwohl der Kunde es gar nicht ausfüllen kann. Der Kunde erhält also eine Fehlermeldung, und kann gar nix dagegen tun. Er kann sich nicht mehr registrieren und auch bestellen geht dann nicht mehr, denn Pflichtfelder werden auch im Bestellprozess geprüft.

Also immer nach der Änderung testen!

Achso, und noch was. Die Pflichtfelder für die Stammdaten und die Lieferanschrift müssen nicht identisch sein, auch wenn das zunächst standardmäßig so ist. Sie können z. B. bei der Adresse die Telefonnummer zum Pflichtfeld machen, während sie bei der Lieferanschrift eben optional (oder gar nicht ausfüllbar) ist.

Tutorial: Pflichtfelder für Kunden ändern in OXID eShop

OXID Shop RegistrierungPflichtfelder in Formularen sind Felder, die Kunden (Besucher) zwingend ausfüllen müssen. Wenn sich ein Neukunde in einem OXID Onlineshop registriert (oder bestellt), machen Pflichtfelder Sinn, denn so lässt sich sicherstellen, dass die Adresse vollständig ist und die Bestellung rasch ausgeliefert werden kann.

In OXID Shops sind Pflichtfelder für die Registrierung bzw. Bestellung bereits voreingestellt.

Manchmal ist es aber auch nötig, diese Pflichtfelder für den eigenen Shop anzupassen, also andere Felder zusätzlich zur Pflicht zu machen oder Pflichtfelder zu entfernen. Das geht in OXID relativ easy – wenn man weiß wie (und das erkläre ich  jetzt).

So ist es per Voreinstellung

Wenn sich ein Kunde in einem OXID Shop registrieren will, muss er standardmäßig folgende Felder ausfüllen:

Vorname, Nachname, Straße + Hausnummer, PLZ + Ort + Land

Und natürlich E-Mail und Passwort, die sind ja notwendig, damit der Kunde sich später wieder im Shop anmelden kann. Da das aber immer so ist, bleiben die jetzt mal bei unserer Betrachtung hier außen vor.

Auch wenn der Kunde eine abweichende Lieferadresse angeben möchte, gelten dafür die oben genannten Felder als Pflicht.

Pflichtfelder in OXID ändern

Sie können diese Pflichtangaben ganz einfach selbst anpassen.

Gehen Sie im Shop-Backend auf Stammdaten → Grundeinstellungen . Klicken Sie auf den Tab „Einstell.“ und öffnen Sie ganz unten die Gruppe „Weitere Einstellungen„.

Gleich das erste Eingabefeld ist beschriftet mit „Muss“-Felder für die Registrierung des Kunden.

Auf den ersten Blick ist der Inhalt dieses Feldes sehr kryptisch und unverständlich (und auf den zweiten meist auch). Aber keine Angst – das ist gar nicht so schwer, wie es aussieht.

Diese Worte bezeichnen nämlich die Tabelle und die Spalten in OXID, die als Pflicht gesetzt sind. Der Tabellenname steht dabei vor dem Unterstrich, der Spaltenname danach.

oxuser__oxlname steht so z. B. für die Tabelle oxuser und die Spalte oxlname. Welche Felder es gibt, habe ich unten zusammengestellt.

Und noch eine wichtige Regel: Pro Pflichtfeld eine Zeile. Wenn Sie neue hinzufügen, fügen Sie also immer eine neue Zeile hinzu, wenn Sie ein Pflichtfeld entfernen, löschen Sie die gesamte Zeile.

Und so fügen Sie ein Pflichtfeld hinzu (oder entfernen eins)

Wenn Sie sich die Einträge genauer anschauen, werden Sie feststellen, dass es eigentlich nur zwei verschiedene Tabellen gibt: oxuser (Stammdaten des Kunden) und oxaddress (Lieferadressen des Kunden). Und noch was erleichtert uns die Arbeit enorm: Die Spalten in oxuser und oxaddress heißen gleich, zumindest die, auf die es uns ankommt.

Folglich können Sie hier nun weitere Pflichtfelder hinzufügen, indem Sie diese einfach als neue Zeilen anhängen. Wichtig dabei ist (wie eben schon erwähnt), dass wirklich jedes Feld in einer neuen Zeile steht und achten Sie unbedingt auf die korrekte Schreibweise! Die Reihenfolge spielt übrigens keine Rolle.

Umgekehrt lassen sich Pflichtfelder ganz einfach löschen, indem Sie die Zeile(n) entfernen. Nicht die Eingabefelder werden dabei gelöscht, sondern nur der Status „Pflicht“. Die Felder können dann noch ausgefüllt werden, müssen es aber nicht.

Die wichtigsten Spalten in OXID eShop

Nun braucht man nur noch wissen, wie die Spalten heißen, die die gewünschten Informationen enthalten. Dafür habe ich Ihnen eine Übersicht erstellt.

Rechnungs-Adresse

oxuser__oxfname Vorname
oxuser__oxlname Nachname
oxuser__oxstreet Straße
oxuser__oxstreetnr Hausnummer
oxuser__oxzip Postleitzahl
oxuser__oxcity Stadt
oxuser__oxcountryid Land
oxuser__oxfon Telefonnummer

Liefer-Adresse

oxaddress__oxfname Vorname
oxaddress__oxlname Nachname
oxaddress__oxstreet Straße
oxaddress__oxstreetnr Hausnummer
oxaddress__oxzip Postleitzahl
oxaddress__oxcity Stadt
oxaddress__oxcountryid Land
oxaddress__oxfon Telefonnummer

Sollten Sie noch ein Feld vermissen, schreiben Sie mir einfach einen kurzen Kommentar, ich ergänze das dann.

Und noch ganz wichtig

OXID markiert die Pflichtfelder und prüft die Eingabe vollautomatisch. Aber: Stellen Sie sicher, dass Ihr Formular die Pflichtfelder überhaupt enthält, denn OXID ergänzt diese nicht von sich aus! Gerade bei angepassten Themes kann es z. B. sein, dass das Feld für die Mobilnummer entfernt wurde. Wenn Sie es nun als Pflichtfeld setzen, prüft OXID es, obwohl der Kunde es gar nicht ausfüllen kann. Der Kunde erhält also eine Fehlermeldung, und kann gar nix dagegen tun. Er kann sich nicht mehr registrieren und auch bestellen geht dann nicht mehr, denn Pflichtfelder werden auch im Bestellprozess geprüft.

Also immer nach der Änderung testen!

Achso, und noch was. Die Pflichtfelder für die Stammdaten und die Lieferanschrift müssen nicht identisch sein, auch wenn das zunächst standardmäßig so ist. Sie können z. B. bei der Adresse die Telefonnummer zum Pflichtfeld machen, während sie bei der Lieferanschrift eben optional (oder gar nicht ausfüllbar) ist.

OXID eShop Erweiterungen – Teil 5

In diesem Teil möchte ich euch eine einfache Möglichkeit zeigen, wie ihr eure Individuellen Informationen über ein Modul im Template zur Verfügung stellt.

Tutorial: Cookie Meldung in OXID eShop aktivieren und anpassen

Weihnachtsplätzchen ohne BackenWebsites und Shops verwenden Cookies. Das sind kleine Textdateien, in denen besucherbezogene Daten gespeichert werden. Damit erkennt der Shop oder die Website den Besucher wieder. Und zwar nicht nur nach zwei Tagen, sondern bei jedem Aufruf einer einzelnen Seite.

Schon seit vielen Jahren gibt es eine EU-Richtlinie, die den Einsatz von nicht unbedingt notwendigen Cookies nur nach ausdrücklicher Zustimmung erlaubt. In der Praxis wurde dies durch die Cookie-Meldung so gelöst, dass mit dem Besuch einer Website quasi dieses Einverständnis stillschweigend erteilt wird. Dazu wird beim ersten Besuch eine entsprechende Meldung angezeigt – auch Cookie Note genannt.

In Deutschland ist diese Meldung zwar nicht gesetzlich vorgeschrieben, aber Google hat sie im Sommer 2015 für mehrere seiner Dienste zur Pflicht erklärt, und außerdem setzt sie sich immer mehr durch.

Auch wenn sich bei Besuchern inzwischen herumgesprochen haben sollte, dass Websites – insbesondere Shops – Cookies verwenden, ist man mit einer Cookie Note, die beim ersten Aufruf der Website erscheint – rechtlich auf sichererer Seite.

OXID bringt Cookie Note Funktion bereits mit, und zwar schon lange. Ich möchte aber nicht nur zeigen, wie Sie sie aktivieren (denn das ist nur ein Klick), sondern auch wie Sie sie anpassen können. Ich sage auch, warum man es tun sollte.

Cookie Meldung in OXID eShop aktivieren

Das ist einfach: Gehen Sie im Backend auf StammdatenGrundeinstellungen, dort auf den Tab „Einstellungen“ und aktivieren Sie unter „Weitere Einstellungen“ ganz unten die Checkbox „Kunden müssen der Verwendung von Cookies zustimmen“. Ab sofort wird die Meldung jedem Besucher beim ersten Besuch im Shop angezeigt.

Nun wird die Optik der Meldung nicht jedermans Sache sein. Ich finde auch den Text zu lang. Und den Link soll man klicken, wenn man nicht einverstanden ist. Auf den meisten anderen Websites gibt es hier aber erst noch „weitere Informationen“ – ich finde, das klingt viel besucherfreundlicher. Ich habe also drei Änderungswünsche:

  • Optik anpassen,
  • Text der Meldung ändern,
  • Link ändern auf eine Seite mit weiteren Informationen.

Layout des OXID Cookie Notes ändern

Der Text zieht sich aktuell über die komplette Breite. Auf großen Monitoren finde ich den Text schwer lesbar, weil er sehr breit läuft, breiter als der Shop ist. Das möchte ich ändern. Ich will, dass die Box zwar weiterhin über die gesamte Breite läuft, der Text aber maximal die Breite der Shopansicht hat.

Öffnen Sie die Datei

/out/mein-theme/src/css/oxid.css

(ersetzen Sie mein-theme durch den Verzeichnisnamen zu Ihrem Theme). Suchen Sie dort den Eintrag #cookieNote .notify und ergänzen Sie ihn wie folgt:

margin: auto sorgt dabei dafür, dass der Eintrag automatisch zentriert wird. line-height: 1.3em sorgt dafür, dass die Textzeilen nicht so eng aneinander kleben.

Standardmäßig kommt die Cookie-Note Box im OXID Azure Theme mit orangem Hintergrund. Das möchten Sie vielleicht auch ändern – in unserem Shop passt es jedenfalls ganz und gar nicht.

Suchen Sie in der oben genannten oxid.css den Eintrag #cookieNote. Dort gibt es eine Eigenschaft background-color, dahinter ist eine sechsstellige Zeichenkette mit # Zeichen davor angegeben. Das ist der Farb-Hexcode. Wenn Sie Ihren gewünschten Farbcode kennen, setzen Sie ihn dort ein. Sicher weiß Ihr Grafiker den Farbcode der gewünschten Farbe, oder Sie ermitteln ihn mit einem Browser-Plugin, wie z. B. ColorZilla für den Firefox.

Prüfen Sie nach der Änderung auf jeden Fall die Darstellung. Wenn Sie eine hellere Hintergrundfarbe wählen, macht es wahrscheinlich Sinn, die Schriftfarbe von weiß auf grau oder schwarz umzustellen, damit der Text weiterhin gut lesbar bleibt. Ändern Sie hierzu analog den Farbcode hinter der Eigenschaft color für den Eintrag #cookieNote und auch für den Eintrag #cookieNote a – denn das ist die Farbe für die Links.

Da die Meldung im Shop nur einmalig angezeigt wird, müssen Sie zum nochmaligen Testen das Cookie für Ihren Shop löschen. Im Firefox machen Sie das unter EinstellungenDatenschutzeinzelne Cookies löschen. Geben Sie hier die Adresse zu Ihrem Shop an und löschen Sie die Cookies.

Oder Sie deaktivieren Cookies für den Moment ganz, aber nicht vergessen, sie anschließend wieder zu aktivieren!

Wichtig – wenn Sie ein mobiles Theme einsetzen, prüfen Sie auch dort die Darstellung und passen Sie sie falls nötig an. Sie ändern dazu die Einstellungen in der oxid.css des mobilen Themes. Achtung, hier ist #cookieNote durch .cookie-note zu ersetzen!

Text der Meldung ändern

Der Text in der Standard-Meldung ist sehr lang und klingt echt stelzig. Kürzer und knackiger geht es auch.

Öffnen Sie die Datei

/application/views/mein-theme/de/cust_lang.php

(mein-theme ersetzen Sie wieder durch den Verzeichnisnamen Ihres Themes). Falls die Datei noch nicht da ist, kopieren Sie sie am besten aus

/application/views/azure/de.

Ergänzen Sie nun unten vor der schließenden Klammer folgenden Eintrag:

Achten Sie unbedingt darauf, dass die Zeile über Ihrem neuen Eintrag auf ein Komma endet. Sie können den Text natürlich beliebig abändern.

Außerdem können Sie den Linktext ändern:

Hier verlinken wir gleich im nächsten Schritt auf eine andere Seite, die mehr Informationen zum Thema Cookies bietet.

Änderungen an den Übersetzungsdateien werden erst übernommen, nachdem der tmp-Ordner geleert wurde – also bitte gleich noch machen (oder im nächsten Schritt, da müssen wir es ohnehin nochmal tun). Wichtig: die Datei .htaccess muss bleiben, falls sie da ist.

Infoseite anlegen und verlinken

Gehen Sie nun im Backend auf KundeninformationenCMS. Legen Sie dort eine neue Seite an. Geben Sie der Seite eine beliebige ID, z. B. dwacookies. Diese ID benötigen Sie gleich nochmal.

Erstellen Sie dann den Seitentext. Sie können dort z. B. folgenden Inhalt einfügen:

Titel: „Infos zu Cookies“

In diesem Online-Shop setzen wir sogenannte „Cookies“ ein.

Hierbei handelt es sich um kleine Textdateien, die von unserem Webserver an Ihren Computer gesendet werden, um diesen für die Dauer des Besuchs zu identifizieren.

Über diese Cookies erfassen wir keine personenbezogenen Daten.

Die Darstellung des Shops ist auch ohne die Speicherung von Cookies möglich. Sie können das Speichern von Cookies in den Einstellungen Ihres Browser deaktivieren oder diesen so einstellen, dass er Sie über die beabsichtigte Speicherung durch eine Internetseite informiert. In diesem Fall entscheiden Sie über die Annahme des Cookies.

Allerdings empfehlen wir, für den Shop Cookies zuzulassen, da diese aus technischen Gründen für den vollen Funktionsumfang erforderlich sind.

Möchten Sie Ihre Cookies löschen, die für diesen Shop gesetzt wurden, klicken Sie bitte hier.

Legen Sie hinter den letzten Satz den Link auf die dafür von OXID vorgesehene Seite (/cookies). Übrigens können Sie diese Seite ebenfalls im CMS anpassen, das ist die Seite mit der ID oxcookiesexplanation.

Legen Sie auf dem Tab „SEO“ eine eindeutige URL für die Seite fest, z. B. cookie-infos. Aktivieren Sie dann Ihre neue CMS-Seite.

Nun kommt der schwierigste Teil – die Verlinkung. Wenn Sie keinen ordentlichen Editor haben, seien Sie besonders sorgsam bei der Durchführung der Änderungen! Öffnen Sie dazu die Datei
/application/views/mein-theme/tpl/widget/header/cookienote.tpl.

Ist sie nicht da, kopieren Sie sie aus dem entsprechenden Unterverzeichnis von azure.

Suchen Sie folgenden Eintrag:

Setzen Sie vor diesen Bereich folgende Zeile:

Ersetzen Sie dwacookies ggf. durch die ID, die Sie oben für die Seite gesetzt haben.

Setzen Sie nun hinter den Bereich folgende Zeile:

Nun noch ein letzter Schritt. Ersetzen Sie in dem Bereich den Text

durch

Laden Sie die Datei in das Verzeichnis Ihres Themes hoch. Nun ist nochmal das tmp-Verzeichnis zu leeren, damit die Änderungen übernommen werden.

Zu kompliziert? Wenig Zeit? Wir helfen.

Ich weiß, das kann frustig sein, wenn ich hier schreibe, „ganz leicht“ – und man dann die Datei oder die Zeile nicht findet, oder wenn man keine Zeit hat.

Ich habe versucht, es so genau wie möglich zu erklären, aber ich so geschriebene Anleitungen sind trotzdem manchmal schwierig, wenn sie mehrere Schritte beinhalten. Vor allem, wenn Dinge dabei sind, die man noch nie gemacht hat. Ich wollte die Anleitung trotzdem schreiben – aber ehe sie verzweifeln: Wir helfen auch!

Im Zweifel geht das dann auch noch viel schneller und Sie haben den Kopf frei. Daher: Nicht lang verzagen, fragen Sie uns einfach.

[Update 17.02.2016] – In Shops, die in Unterverzeichnissen laufen, wie beispielsweise unserer, funktioniert die Verlinkung nicht so, wie ich ursprünglich vorgeschlagen habe, daher habe ich diesen Abschnitt nochmal etwas angepasst.

Tutorial: Cookie Meldung in OXID eShop aktivieren und anpassen

Weihnachtsplätzchen ohne BackenWebsites und Shops verwenden Cookies. Das sind kleine Textdateien, in denen besucherbezogene Daten gespeichert werden. Damit erkennt der Shop oder die Website den Besucher wieder. Und zwar nicht nur nach zwei Tagen, sondern bei jedem Aufruf einer einzelnen Seite.

Schon seit vielen Jahren gibt es eine EU-Richtlinie, die den Einsatz von nicht unbedingt notwendigen Cookies nur nach ausdrücklicher Zustimmung erlaubt. In der Praxis wurde dies durch die Cookie-Meldung so gelöst, dass mit dem Besuch einer Website quasi dieses Einverständnis stillschweigend erteilt wird. Dazu wird beim ersten Besuch eine entsprechende Meldung angezeigt – auch Cookie Note genannt.

In Deutschland ist diese Meldung zwar nicht gesetzlich vorgeschrieben, aber Google hat sie im Sommer 2015 für mehrere seiner Dienste zur Pflicht erklärt, und außerdem setzt sie sich immer mehr durch.

Auch wenn sich bei Besuchern inzwischen herumgesprochen haben sollte, dass Websites – insbesondere Shops – Cookies verwenden, ist man mit einer Cookie Note, die beim ersten Aufruf der Website erscheint – rechtlich auf sichererer Seite.

OXID bringt Cookie Note Funktion bereits mit, und zwar schon lange. Ich möchte aber nicht nur zeigen, wie Sie sie aktivieren (denn das ist nur ein Klick), sondern auch wie Sie sie anpassen können. Ich sage auch, warum man es tun sollte.

Cookie Meldung in OXID eShop aktivieren

Das ist einfach: Gehen Sie im Backend auf StammdatenGrundeinstellungen, dort auf den Tab „Einstellungen“ und aktivieren Sie unter „Weitere Einstellungen“ ganz unten die Checkbox „Kunden müssen der Verwendung von Cookies zustimmen“. Ab sofort wird die Meldung jedem Besucher beim ersten Besuch im Shop angezeigt.

Nun wird die Optik der Meldung nicht jedermans Sache sein. Ich finde auch den Text zu lang. Und den Link soll man klicken, wenn man nicht einverstanden ist. Auf den meisten anderen Websites gibt es hier aber erst noch „weitere Informationen“ – ich finde, das klingt viel besucherfreundlicher. Ich habe also drei Änderungswünsche:

  • Optik anpassen,
  • Text der Meldung ändern,
  • Link ändern auf eine Seite mit weiteren Informationen.

Layout des OXID Cookie Notes ändern

Der Text zieht sich aktuell über die komplette Breite. Auf großen Monitoren finde ich den Text schwer lesbar, weil er sehr breit läuft, breiter als der Shop ist. Das möchte ich ändern. Ich will, dass die Box zwar weiterhin über die gesamte Breite läuft, der Text aber maximal die Breite der Shopansicht hat.

Öffnen Sie die Datei

/out/mein-theme/src/css/oxid.css

(ersetzen Sie mein-theme durch den Verzeichnisnamen zu Ihrem Theme). Suchen Sie dort den Eintrag #cookieNote .notify und ergänzen Sie ihn wie folgt:

margin: auto sorgt dabei dafür, dass der Eintrag automatisch zentriert wird. line-height: 1.3em sorgt dafür, dass die Textzeilen nicht so eng aneinander kleben.

Standardmäßig kommt die Cookie-Note Box im OXID Azure Theme mit orangem Hintergrund. Das möchten Sie vielleicht auch ändern – in unserem Shop passt es jedenfalls ganz und gar nicht.

Suchen Sie in der oben genannten oxid.css den Eintrag #cookieNote. Dort gibt es eine Eigenschaft background-color, dahinter ist eine sechsstellige Zeichenkette mit # Zeichen davor angegeben. Das ist der Farb-Hexcode. Wenn Sie Ihren gewünschten Farbcode kennen, setzen Sie ihn dort ein. Sicher weiß Ihr Grafiker den Farbcode der gewünschten Farbe, oder Sie ermitteln ihn mit einem Browser-Plugin, wie z. B. ColorZilla für den Firefox.

Prüfen Sie nach der Änderung auf jeden Fall die Darstellung. Wenn Sie eine hellere Hintergrundfarbe wählen, macht es wahrscheinlich Sinn, die Schriftfarbe von weiß auf grau oder schwarz umzustellen, damit der Text weiterhin gut lesbar bleibt. Ändern Sie hierzu analog den Farbcode hinter der Eigenschaft color für den Eintrag #cookieNote und auch für den Eintrag #cookieNote a – denn das ist die Farbe für die Links.

Da die Meldung im Shop nur einmalig angezeigt wird, müssen Sie zum nochmaligen Testen das Cookie für Ihren Shop löschen. Im Firefox machen Sie das unter EinstellungenDatenschutzeinzelne Cookies löschen. Geben Sie hier die Adresse zu Ihrem Shop an und löschen Sie die Cookies.

Oder Sie deaktivieren Cookies für den Moment ganz, aber nicht vergessen, sie anschließend wieder zu aktivieren!

Wichtig – wenn Sie ein mobiles Theme einsetzen, prüfen Sie auch dort die Darstellung und passen Sie sie falls nötig an. Sie ändern dazu die Einstellungen in der oxid.css des mobilen Themes. Achtung, hier ist #cookieNote durch .cookie-note zu ersetzen!

Text der Meldung ändern

Der Text in der Standard-Meldung ist sehr lang und klingt echt stelzig. Kürzer und knackiger geht es auch.

Öffnen Sie die Datei

/application/views/mein-theme/de/cust_lang.php

(mein-theme ersetzen Sie wieder durch den Verzeichnisnamen Ihres Themes). Falls die Datei noch nicht da ist, kopieren Sie sie am besten aus

/application/views/azure/de.

Ergänzen Sie nun unten vor der schließenden Klammer folgenden Eintrag:

Achten Sie unbedingt darauf, dass die Zeile über Ihrem neuen Eintrag auf ein Komma endet. Sie können den Text natürlich beliebig abändern.

Außerdem können Sie den Linktext ändern:

Hier verlinken wir gleich im nächsten Schritt auf eine andere Seite, die mehr Informationen zum Thema Cookies bietet.

Änderungen an den Übersetzungsdateien werden erst übernommen, nachdem der tmp-Ordner geleert wurde – also bitte gleich noch machen (oder im nächsten Schritt, da müssen wir es ohnehin nochmal tun). Wichtig: die Datei .htaccess muss bleiben, falls sie da ist.

Infoseite anlegen und verlinken

Gehen Sie nun im Backend auf KundeninformationenCMS. Legen Sie dort eine neue Seite an. Geben Sie der Seite eine beliebige ID, z. B. dwacookies. Diese ID benötigen Sie gleich nochmal.

Erstellen Sie dann den Seitentext. Sie können dort z. B. folgenden Inhalt einfügen:

Titel: „Infos zu Cookies“

In diesem Online-Shop setzen wir sogenannte „Cookies“ ein.

Hierbei handelt es sich um kleine Textdateien, die von unserem Webserver an Ihren Computer gesendet werden, um diesen für die Dauer des Besuchs zu identifizieren.

Über diese Cookies erfassen wir keine personenbezogenen Daten.

Die Darstellung des Shops ist auch ohne die Speicherung von Cookies möglich. Sie können das Speichern von Cookies in den Einstellungen Ihres Browser deaktivieren oder diesen so einstellen, dass er Sie über die beabsichtigte Speicherung durch eine Internetseite informiert. In diesem Fall entscheiden Sie über die Annahme des Cookies.

Allerdings empfehlen wir, für den Shop Cookies zuzulassen, da diese aus technischen Gründen für den vollen Funktionsumfang erforderlich sind.

Möchten Sie Ihre Cookies löschen, die für diesen Shop gesetzt wurden, klicken Sie bitte hier.

Legen Sie hinter den letzten Satz den Link auf die dafür von OXID vorgesehene Seite (/cookies). Übrigens können Sie diese Seite ebenfalls im CMS anpassen, das ist die Seite mit der ID oxcookiesexplanation.

Legen Sie auf dem Tab „SEO“ eine eindeutige URL für die Seite fest, z. B. cookie-infos. Aktivieren Sie dann Ihre neue CMS-Seite.

Nun kommt der schwierigste Teil – die Verlinkung. Wenn Sie keinen ordentlichen Editor haben, seien Sie besonders sorgsam bei der Durchführung der Änderungen! Öffnen Sie dazu die Datei
/application/views/mein-theme/tpl/widget/header/cookienote.tpl.

Ist sie nicht da, kopieren Sie sie aus dem entsprechenden Unterverzeichnis von azure.

Suchen Sie folgenden Eintrag:

Setzen Sie vor diesen Bereich folgende Zeile:

Ersetzen Sie dwacookies ggf. durch die ID, die Sie oben für die Seite gesetzt haben.

Setzen Sie nun hinter den Bereich folgende Zeile:

Nun noch ein letzter Schritt. Ersetzen Sie in dem Bereich den Text

durch

Laden Sie die Datei in das Verzeichnis Ihres Themes hoch. Nun ist nochmal das tmp-Verzeichnis zu leeren, damit die Änderungen übernommen werden.

Zu kompliziert? Wenig Zeit? Wir helfen.

Ich weiß, das kann frustig sein, wenn ich hier schreibe, „ganz leicht“ – und man dann die Datei oder die Zeile nicht findet, oder wenn man keine Zeit hat.

Ich habe versucht, es so genau wie möglich zu erklären, aber ich so geschriebene Anleitungen sind trotzdem manchmal schwierig, wenn sie mehrere Schritte beinhalten. Vor allem, wenn Dinge dabei sind, die man noch nie gemacht hat. Ich wollte die Anleitung trotzdem schreiben – aber ehe sie verzweifeln: Wir helfen auch!

Im Zweifel geht das dann auch noch viel schneller und Sie haben den Kopf frei. Daher: Nicht lang verzagen, fragen Sie uns einfach.

[Update 17.02.2016] – In Shops, die in Unterverzeichnissen laufen, wie beispielsweise unserer, funktioniert die Verlinkung nicht so, wie ich ursprünglich vorgeschlagen habe, daher habe ich diesen Abschnitt nochmal etwas angepasst.

OXID eShop Erweiterungen – Teil 4

Nun steigen wir tiefer in die Modulentwicklung ein. In diesem Teil möchte ich die Möglichkeiten aufzeigen, die man zur Erweiterung des Backends hat und wie man eigene Navigationspunkte und Seiten im Backend erstellt.