Erhalten Sie Zugang zu diesem und mehr als 300000 Büchern ab EUR 5,99 monatlich.
Sie suchen nach den richtigen Zutaten, um Ihren OXID-Shop auszubauen oder ein konkretes Problem zu lösen? Dann ist dieses Kochbuch genau das Richtige für Sie: Es enthält zahlreiche Rezepte für typische Anwendungsfälle beim Aufbau und bei der Erweiterung Ihres Online-Shops. Konkrete Szenarien aus dem OXID-Entwicklerleben: Dieses OXID-Entwicklerhandbuch bietet geballtes Expertenwissen, das in die Tiefe geht. Zu Themengebieten wie z.B. Templating, Entwicklung von eigenen Modulen sowie Performance und Skalierung enthält das OXID eShop Kochbuch nützliche Rezepte aus der Praxis, die auch einen Blick hinter die Kulissen des Shopsystems erlauben. Das Ziel: Entwicklern bei der täglichen Arbeit mit OXID eShop konkrete Hilfestellung zu geben und dabei die Software-Architektur sowie Best Practices zu vermitteln. Lösungen zu häufig auftretenden Fragestellungen: Die Rezepte sind so aufgebaut, dass ein Problem benannt, die Lösung beschrieben und anschließend diskutiert wird. In den Kapiteln zu Templating und Modulentwicklung wird zunächst das nötige Basiswissen vermittelt. Danach erfahren Sie beispielsweise, wie Sie: eine gefilterte Suche anhand von Produktattributen durchführen oder Lazy Loading für Kategorien aktivieren; Brutto- und Nettopreise gleichzeitig anzeigen; den Check-out-Prozess an die eigenen Vorstellungen anpassen; bei der Anbindung von Drittsystemen einen externen Preis im Shop darstellen; das Frontend-Editing nutzen oder mit der Erweiterung TOXID ein WordPress-Blog an OXID anbinden; das CMS-Modul erweitern und einen Scheduler für automatisierte Aufgaben einsetzen; in der OXID-Community einen Bug-Report einsenden oder eine Usergroup einrichten
Sie lesen das E-Book in den Legimi-Apps auf:
Seitenzahl: 205
Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:
Einführung
An wen sich dieses Buch richtet
Was Sie schon wissen sollten
Aufbau dieses Buchs
Codebeispiele
Typografische Konventionen
Danksagungen
Joscha Krug
Roman Zenner
1. Templating
1.1 Den Aufbau eines Themes kennenlernen
1.2 Ein Theme updatesicher entwickeln
Problem
Lösung
Diskussion
1.3 Blöcke in Themes einsetzen
Problem
Lösung
Diskussion
1.4 Die sozialen Netzwerke Pinterest, Twitter und Google+ einbinden
Problem
Lösung
Diskussion
2. Entwicklung und Deployment
2.1 Den Grundaufbau des OXID-Frameworks kennenlernen
2.2 Ein Modul installieren
Problem
Lösung
Diskussion
2.3 Den Cache gezielt leeren
Problem
Lösung
Diskussion
2.4 Einen neuen Controller für Landing-Pages aufbauen
Problem
Lösung
Diskussion
2.5 Readme mit Markdown-Formatierung im Backend anzeigen
Problem
Lösung
Diskussion
2.6 Termine im Backend pflegen
Problem
Lösung
Diskussion
2.7 Deployment- und Entwicklungsumgebungen aufbauen
Problem
Lösung
Diskussion
2.8 OXID eShop durch Updates auf dem neuesten Stand halten
Problem
Lösung
Diskussion
3. Kategorien und Suche
3.1 Artikel um ein Feld ergänzen und darüber sortieren
Problem
Lösung
Diskussion
3.2 Die Suchmöglichkeiten nach Produkten erweitern
Problem
Lösung
Diskussion
3.3 Icons in der Kategorienavigation verwenden
Problem
Lösung
3.4 Eine zusätzliche Bildergröße einführen
Problem
Lösung
Diskussion
3.5 Zeitgesteuerte Preisupdates realisieren
Problem
Lösung
Diskussion
3.6 Listenansicht im Template via AJAX asynchron erzeugen
Problem
Lösung
Diskussion
3.7 Die Suche um eine Auto-Suggestion erweitern
Problem
Lösung
Diskussion
3.8 Bei der Suche auch die Varianten berücksichtigen
Problem
Lösung
Diskussion
4. Produktdetailseiten
4.1 Bilder auf der Detailseite nachschärfen
Problem
Lösung
Diskussion
4.2 Brutto- und Nettopreise gleichzeitig anzeigen
Problem
Lösung
Diskussion
4.3 Generische Produktinformationen in eine CMS-Seite auslagern
Problem
Lösung
Diskussion
5. Bestellprozess
5.1 Gestatten Sie Ihren Kunden, sich nur mit einem einzigen Code einzuloggen
Problem
Lösung
Diskussion
5.2 Kunden erst einige Tage nach dem Versand bitten, eine Bewertung abzugeben
Problem
Lösung
Diskussion
5.3 Rechnung in Versandbestätigungs-E-Mail als PDF anhängen
Problem
Lösung
Diskussion
5.4 Verhindern, dass Newsletter doppelt verschickt werden
Problem
Lösung
Diskussion
5.5 Check-out-Prozess vereinfachen
Problem
Lösung
Diskussion
5.6 Tickets über den Shop verkaufen
Problem
Lösung
Diskussion
6. Externe Systeme anbinden
6.1 RSS-Feed in der Sidebar darstellen
Problem
Lösung
Diskussion
6.2 Externe Preise auf der Produktdetailseite anzeigen
Problem
Lösung
Diskussion
6.3 Bestelldaten per FTP übermitteln
Problem
Lösung
Diskussion
6.4 Ein Blog mithilfe von TOXID anbinden
Problem
Lösung
Diskussion
6.5 Frontend-Editing auf der Produktdetailseite realisieren
Problem
Lösung
Diskussion
6.6 Das Webtracking-Tool Piwik anbinden
Problem
Lösung
Diskussion
7. Performance und Skalierung
7.1 Performance-Killer mit Debug-Leveln ermitteln
Problem
Lösung
Diskussion
7.2 Weiße Seite – was nun?
Problem
Lösung
Diskussion
7.3 Seiten statisch cachen
Problem
Lösung
Diskussion
Exkurs: Performance
Was geschieht beim Seitenaufruf?
Reihenfolge und Blockierungen
Optimierung verschiedener Dateitypen
HTML
CSS
JavaScript
Bilder
So klein und so wenig wie möglich
8. Weitere Funktionalitäten nachrüsten
8.1 CMS-Seiten strukturieren
Problem
Lösung
Diskussion
8.2 Das Exception-Log im Backend darstellen
Problem
Lösung
Diskussion
8.3 Scheduler für wiederkehrende Aufgaben einrichten
Problem
Lösung
Diskussion
9. Community
9.1 Einen Bug-Report einstellen
Problem
Lösung
Diskussion
9.2 Sich an der Weiterentwicklung beteiligen
Problem
Lösung
Diskussion
9.3 Sich im Forum an Diskussionen beteiligen
Problem
Lösung
Diskussion
9.4 Mit der Entwickler-Mailingliste kommunizieren
Problem
Lösung
Diskussion
9.5 Eine OXID-Usergroup einrichten
Problem
Lösung
Diskussion
9.6 OXID-Partner werden
Problem
Lösung
Diskussion
9.7 Zu einem Community-Modul beitragen
Problem
Lösung
Diskussion
9.8 Weitere Informationsquellen nutzen
Problem
Lösung
Diskussion
A. Über die Autoren
Stichwortverzeichnis
Kolophon
Mit OXID eShop befindet sich eine E-Commerce-Software auf dem Markt, die in den letzten Jahren eine Reihe von Erfolgen hat feiern können. So gelingt es regelmäßig, neue große Referenzkunden zu gewinnen, was die Flexibilität und Stabilität dieser E-Commerce-Software jedes Mal wieder unter Beweis stellt. Das gilt für die Funktionen, die out-of-the-box vorhanden sind, hat aber auch Einfluss auf die Art und Weise, wie sich entwicklerseitig mit dem OXID-Framework arbeiten lässt. Durch gekapselte Module wird sichergestellt, dass neue Erweiterungen verwendet werden können, ohne das Grundsystem dadurch zu gefährden. Durch intensives und automatisiertes Testing der Core-Software wird außerdem gewährleistet, dass auch nach Software-Updates produktive Shops nicht negativ beeinflusst werden.
Die Fachliteratur zum OXID eShop hält sich aktuell leider noch in Grenzen. Es gibt ein ebenfalls im O’Reilly Verlag erschienenes Anwenderhandbuch (bei dem auch einer der Autoren des vorliegenden Buchs seine Finger mit im Spiel hatte), das sich, wie der Name schon vermuten lässt, eher der Bedienung und der richtigen Konfiguration widmet. Auf technische Details wird darin nicht näher eingegangen. Das vorliegende OXID-Kochbuch soll das ändern und den Leser dabei begleiten, wenn dieser dem System unter die Haube schauen will. Das soll in einzelnen, abgeschlossenen »Rezepten« geschehen, in denen jeweils eine konkrete Fragestellung, eine Lösung und eine anschließende Diskussion angeboten werden.
Als Grundlage für unsere Rezepte verwenden wir die Version 4.7, mit der auch einige grundlegende Neuerungen hinsichtlich des Modulaufbaus eingeführt wurden.
Bei der Auswahl der Rezepte und dem Schreiben der Beispielmodule haben wir darauf geachtet, die Szenarien dem tatsächlichen »OXID-Entwicklerleben« zu entnehmen und konkrete Hilfestellung zu häufig auftretenden Fragestellungen anzubieten. Die Rezepte unterscheiden sich in Komplexität und Schwierigkeitsgrad, wobei wir bei der Konzeption darauf geachtet haben, eine gute Mischung zu finden, sodass sowohl beginnende OXID-Entwickler als auch alte Hasen interessante Informationen finden können.
Das vorliegende Buch ist hauptsächlich ein Entwicklerbuch. Es ist also für Menschen geschrieben, die aktiv mit Software bzw. der zugrunde liegenden Programmierung arbeiten wollen, um die konkreten Anforderungen aktueller Projekte bestmöglich umsetzen zu können. Wir gehen also davon aus, dass weder eine Erläuterung moderner (Programmier-)Sprachen wie PHP und JavaScript notwendig ist noch Konzepte wie »objektorientierte Entwicklung« und »Model-View-Controller (MVC)« Fremdwörter sind. Sie sollten sich mit einer IDE ihrer Wahl auskennen und diese effizient bedienen können.
In Kapitel 1, widmen wir uns den Templates und zeigen beispielsweise auf, wie ein Theme aufgebaut ist, wie man Templates updatesicher entwickelt oder wie sich mit Blöcken innerhalb von Templates arbeiten lässt.
Anschließend steigen wir in Kapitel 2, direkt in die Modulentwicklung ein. Hier widmen wir uns zunächst weniger komplexen Dingen wie der Installation und Ergänzung bereits vorhandener Module, zeigen jedoch auch in den nachfolgenden Rezepten, wie man eigene Module »from scratch« aufbaut, testet und das Grundsystem durch regelmäßige und geplante Updates auf dem neuesten Stand hält.
Nachdem wir die Themen Templating und Modulentwicklung und damit das nötige Basiswissen vermittelt haben, beschäftigen wir uns in den verbleibenden Kapiteln mit den verschiedensten konkreten Aufgabenbereichen. In Kapitel 3, stellen wir dementsprechend Rezepte vor, die mit den Kategorien und den Suchfunktionen zu tun haben. Es wird beispielsweise gezeigt, wie man eine gefilterte Suche anhand von Produktattributen durchführt, wie man eine zusätzliche Bildgröße einführt und wie man Lazy Loading für Kategorien aktiviert.
In Kapitel 4, sind die Rezepte zusammengefasst, die im weitesten Sinne etwas mit Produktdetails zu tun haben. Es wird unter anderem der Frage nachgegangen, wie man Brutto- und Nettopreise gleichzeitig anzeigen kann, und erläutert, wie man Bilder nachschärft.
Im folgenden Kapitel 5, dreht sich alles um den Bestellvorgang und die Anforderungen, die in diesem Zusammenhang oft an OXID-Entwickler herangetragen werden. Wie hängt man beispielsweise eine Rechnung als PDF an die Bestellbestätigungs-E-Mail an? Wie erreicht man, dass sich Kunden nur über einen Code einloggen, und wie lässt sich der gesamte Check-out-Prozess den eigenen Vorstellungen anpassen?
Da die allerwenigsten Shopprojekte Insellösungen sind und oftmals eine Reihe von Schnittstellen erforderlich ist, haben wir in Kapitel 6, Rezepte zusammengetragen, die sich mit der Anbindung von Drittsystemen beschäftigen. Wir zeigen zum Beispiel, wie man einen externen Preis im Shop darstellen kann oder Bestelldaten über FTP übermittelt. Außerdem kümmern wir uns um das Thema Frontend-Editing und erläutern, wie Sie mit der Erweiterung TOXID ein WordPress-Blog an OXID anbinden können.
Um Performance und Skalierung geht es in Kapitel 7. Hier stellen wir ein Rezept zum Thema Caching vor und zeigen außerdem die geeigneten Strategien, um das Problem der »weißen Seite« zu adressieren.
In Kapitel 8, greifen wir noch tiefer in die Trickkiste und beschreiben Ihnen sinnvolle Module, mit denen Sie die Funktionalität des Shops weiter ausdehnen können, beispielsweise durch eine Erweiterung des CMS-Moduls und den Einsatz eines Schedulers für automatisierte Aufgaben.
Im letzten Kapitel 9, gehen wir schließlich auf die wichtigsten Punkte der Arbeit in der und für die OXID-Community ein und erläutern, wie man einen Bug-Report einsendet, sich im Forum produktiv an Diskussionen beteiligt oder eine Usergroup einrichtet.
Da in den Rezepten die konkrete Arbeit mit dem Code im Vordergrund steht, fällt naturgemäß eine ganze Menge davon an. Das hier ist ein OXID-Kochbuch und kein Schreibkurs, daher werden alle Beispiele als Dateien auf der Website zum Buch (www.oxid-kochbuch.de) hinterlegt. Sämtliche Codebeispiele sind unter der GPLv.2.0-Lizenz veröffentlicht und können gemäß diesen Bedingungen frei in Ihren Projekten verwendet werden.
Trotzdem kommen wir natürlich nicht ohne Code aus, den wir in den einzelnen Rezepten beschreiben. Aus Platzgründen erläutern wir dabei jedoch nicht jede einzelne Zeile jeder einzelnen Moduldatei, sondern beleuchten nur die Teile, die uns thematisch besonders wichtig erscheinen. Was die Arbeitsweise angeht, empfehlen wir daher, die Beispielmodule zu installieren und anschließend mithilfe der jeweiligen Rezepte tiefer in die Materie einzusteigen.
In diesem Buch werden die folgenden typografischen Konventionen verwendet:
Kursivschrift
für Datei- und Verzeichnisnamen, Menüs, Code im Text, E-Mail-Adressen und URLs, aber auch bei der Definition neuer Fachbegriffe und für Hervorhebungen
Nichtproportionalschrift
für die Codebeispiele
Nichtproportionalschrift fett
zur Hervorhebung einzelner Zeilen oder Abschnitte in den Codebeispielen
Dieses Symbol kennzeichnet einen Tipp, einen Vorschlag oder eine allgemeine Anmerkung.
Dieses Symbol kennzeichnet eine Warnung.
Hätte ich vorher gewusst, wieviel Zeit drauf geht, hätte ich das Buch vermutlich nicht geschrieben. Danke liebe Simone, dass du geduldig ausgehalten und mich immer wieder angefeuert hast, auch wenn du lieber auf der Couch mit mir versackt wärst. Ab sofort wieder! Ohne den Großmeister des Peitscheschwingens hätte es wohl auch nicht geklappt. Danke Roman, dass du es trotz Verzögerungen und verrückten Ideen durchgestanden hast. Und noch ein Tipp für alle angehenden Autoren: Mit einem guten Lagavulin schreibt es sich besser. Ein »Danke« für diesen herrlichen Tropfen nach Schottland.
Ich möchte mich vor allem bei meiner Familie bedanken, die mich besonders in der letzten Phase der Manuskripterstellung oft entbehren musste. Ein großes Dankeschön geht auch an meinen Koautor Joscha, der viele neue Module extra für dieses Buch geschrieben hat und der mich somit mit ausreichend Material versorgte.