OXID eShop 4.7.0/5.0.0¶
Versionsbezeichnung: 5.0.0, Revision 51243
Edition: Enterprise Edition
Versionsbezeichnung: 4.7.0, Revision 51243
Edition: Professional Edition und Community Edition
Veröffentlichungstermin: 08.11.2012
Allgemeines¶
In dieser Shopversion wurden zwei Haupt-Features für die Enterprise Edition entwickelt und umgesetzt: Caching und Master/Slave. Die Features tragen wesentlich zur Verbesserung der Performance und zur Reduktion von Lastspitzen in Hochlast-Szenarien bei. Sie erweitern damit signifikant das Potential des OXID eShop. Dies wird durch die Versionsbezeichnung 5.0.0 zum Ausdruck gebracht. Professional und Community Edition wurden mit der Versionsbezeichnung 4.7.0 veröffentlicht. Sie enthalten alle wichtigen Änderungen am OXID Framework und am Core sowie sämtliche Korrekturen.
Zukünftig sollen alle drei Shop-Editionen wieder zusammengeführt werden. Die nächsten Releases sollen neue Funktionen enthalten, die hauptsächlich für OXID eShop, die kleineren E-Commerce betreiben, hilfreich sind. Selbstverständlich wird dabei die Open Source-Strategie weiter konsequent umgesetzt und der OXID eShop auf einer gemeinsamen Code-Basis entwickelt.
Update-Installation¶
Das Update auf OXID eShop Version 4.7.0 (Community und Professional Edition) und Version 5.0.0 (Enterprise Edition) unterscheidet sich grundlegend vom Standard-Update und kann nur auf einen OXID eShop Version 4.6.5 bzw. 4.6.6 angewandt werden. Haben Sie eine vorhergehende Shopversion im Einsatz, muss diese zuerst auf 4.6.5 bzw. 4.6.6 aktualisiert werden.
Die Anleitung Auf 4.7.0/5.0.0 aktualisieren beschreibt das Update des OXID eShop.
Hint
Wir empfehlen dringend, das Update erst in einer Test- oder Entwicklungsumgebung, einer Kopie Ihres aktuellen Shops, auszuführen. Testen Sie anschließend den Bestellprozess sowie Zahlungs- und Versandarten. Arbeitet der Shop korrekt, kann der Shop im Live-System durch den aus der Test- oder Entwicklungsumgebung ersetzt werden.
Neue Funktionen¶
Caching (nur Enterprise Edition)¶
Für die Enterprise Edition wurde ein neues Caching-System implementiert. Es wird durch drei Hauptkomponenten umgesetzt: durch den in den OXID eShop integrierten Cache Manager, unterstützt durch den Reverse Proxy Varnish und/oder durch Memcached. Das Zusammenwirken der Komponenten bewirkt, dass – wenn immer möglich – zwischengespeicherte Inhalte genutzt und an die anfragenden Web-Clients geschickt werden. Damit werden die Datenbankzugriffe reduziert und die Antwortzeiten des OXID eShop verkürzt.
Anleitung zur Konfiguration von Varnish und Memcached sowie zu den Einstellungen für das Caching finden Sie im Abschnitt Caching unserer Online-Dokumentation.
Master/Slave (nur Enterprise Edition)¶
Die Enterprise Edition kann bei aktiviertem Master/Slave mit mehreren Datenbanken betrieben werden. Dabei ist eine Datenbank die Master-Datenbank, die hauptsächlich Schreibzugriffe verarbeitet. Die Slave-Datenbanken enthalten gespiegelte Daten und bedienen die Lesezugriffe. Ein Load-Balancer verteilt die Datenbankzugriffe nach dieser grundsätzlichen Unterscheidung auf die Master-Datenbank und auf die Slave-Datenbanken.
Sie finden die Anleitung zur Konfiguration von Master/Slave im Dokument Master/Slave unserer Online-Dokumentation.
Widgets¶
Mit den Widgets wurde ein neuer Komponententyp für den Seitenaufbau des OXID eShop eingeführt. Es sind logische Elemente der Benutzeroberfläche (GUI), die in jedem beliebigen Template verwendet werden können. Die Aufteilung der Seiten in kleine Einheiten ist eine wichtige Voraussetzung für das Caching. Weitere Informationen zu den Widgets finden Sie im Tutorial Widgets in 4.7 + 5.0 in der OXIDforge.
Benutzerdefinierte Konfigurationsdatei¶
Eigene Konfigurationseinstellungen können in der Datei cust_config.inc.php
definiert werden, die beim Start nach der config.inc.php
geladen wird. Die benutzerdefinierte Konfigurationsdatei muss sich im Hauptverzeichnis des OXID eShop befinden.
Datenbanktabellen mit Zeitstempel¶
Alle Datenbanktabellen erhielten ein zusätzliches Datenbankfeld "oxtimestamp". Beim Erstellen und Ändern von Datensätzen wird die jeweilige Zeit in das Datenbankfeld eingetragen. Damit sind vor kurzem erstellte und geänderte Datensätze schnell zu finden, was die Synchronisation von Daten mit angeschlossenen Systemen erleichtert.
Verbesserungen und Anpassungen¶
Überarbeiteter Bootstrap-Prozess¶
Um den OXID eShop noch schneller zu machen, wurde der Bootstrap-Prozess überarbeitet. Der sogenannte Bootstrap-Prozess ist ein Script, welches alle Methoden inkludiert, definiert und initialisiert, damit das Framework des OXID eShop korrekt arbeitet. Das Framework startet nun in einer effizienteren Weise, indem ausschließlich dessen unmittelbar benötigte Teile geladen werden.
Detaillierte Informationen zum überarbeiteten Bootstrap-Prozess finden Sie im Tutorial Bootstrap process refactored in 4.7 5.0 in der OXIDforge.
Theme "Basic" und Template-Änderungen¶
Das Theme "Basic" wird nicht mehr unterstützt. OXID eShop 4.7.0/5.0.0 enthält ausschließlich das Theme "Azure". Obwohl das Theme "Basic" nicht länger gewartet wird, ist dessen Funktionalität noch vorhanden und kann nach einem Update noch genutzt werden. Eine Anleitung zur Anpassung der Templates finden Sie im Tutorial Use basic theme from version 4.7 and 5.0 on in der OXIDforge.
Templates wurden im Zusammenhang mit der sogenannten "Button-Lösung", die nachfolgend beschrieben ist, geändert. Das Theme "Azure" enthält bereits alle notwendigen Verbesserungen, damit der OXID eShop die Vorgaben des deutschen Gesetzgebers erfüllt. Es gab auch noch weitere kleinere Änderungen in den Templates. Die als "deprecated" gekennzeichneten Bestandteile wurden entfernt.
Neue Datei- und Verzeichnisstruktur¶
Die Architektur des OXID eShop unterliegt ständigen Erweiterungen. Die Struktur von Verzeichnissen und Dateien wurde mit diesem Major Release geändert, um die Architektur klarer zu verdeutlichen. Es erfolgte eine generelle Trennung von Framework und System-Komponenten von der eigentlichen Anwendung. Das Verzeichnis /core
enthält die Komponenten des Frameworks für Datenbank-, Datei- und Session-Handling usw. Im Verzeichnis /application
befinden sich alle Dateien, die den OXID eShop als Anwendung repräsentieren. Das Verzeichnis für die Anwendung wurde zudem in Unterordner aufgeteilt, die das der Architektur zugrunde liegende MVC-Konzept (Model View Controller) abbilden. Darüber hinaus erhielten Komponenten und die neuen Widgets eigene Ordner.
Bisherige Verzeichnisstruktur
/eshop
/core
/views
/modules
/out
/tmp
Neue Verzeichnisstruktur
/eshop
/application
/models
/controllers
/components
/widgets
/views
/translations
/core
/modules
/out
/tmp
Dateien und neue Speicherorte
Models: Dateien, zuständig für Business Logic, wurden vom Verzeichnis
/core
nach/application/models
verschoben. Andere Dateien verblieben dort als Teil des Frameworks.Controllers: Alle Dateien aus dem Verzeichnis
/views
wurde nach/application/controllers
verschoben mit Ausnahme folgender Dateien:oxview.php
,oxviewconfig.php
,oxshopcontrol.php
in das Verzeichnis/core
undoxcmp_*.php
in das Verzeichnis/application/components
.Controllers für Administrationsbereich wurden vom Verzeichnis
/admin
nach/application/controllers/admin
verschoben.Templates befinden sich jetzt im Verzeichnis
/application/views
.Die generischen Sprachdateien wurden vom Verzeichnis
/out/local
nach/application/translations/local
verschoben.
Datei für Transliteration¶
Die Liste der Zeichen, die in der URL durch andere Zeichen zu ersetzen sind (Transliteration), wurde aus der lang.php
in die neue Datei translit_lang.php
verschoben.
Sprachabhängige Überprüfung der Shopversion¶
Im Administrationsbereich wird unter Lizenz der Update-Status geprüft. Dabei wurde bisher immer ein Ergebnis in deutscher Sprache zurückgegeben. Nun wird berücksichtigt, mit welcher Sprache die Anmeldung am Administrationsbereich erfolgte. Unterstützt werden die beiden Standardsprachen des OXID eShop Deutsch und Englisch (Default).
–> –>Modul-Handling¶
Beim Aktivieren und Deaktivieren von Modulen können jetzt Ereignisse ausgeführt werden. Diese sind in der Metadata-Datei zu definieren. Derzeit werden die Ereignisse "onActivate" und "onDeactivate" unterstützt. Weitere Ereignisse sind geplant.
'events' => array(
'onActivate' => 'myModuleEvents::onActivate',
'onDeactivate' => 'myModuleEvents::onDeactivate' ),
Die Klasse "myModuleEvents" wird ebenfalls in der Metadata-Datei, im Array "files" angegeben. Alle Module, die Ereignisse verwenden, müssen die Metadata-Version 1.1 haben.
Mit der geänderten Datei- und Verzeichnisstruktur hat sich auch die der Module geändert.
Dateien müssen mit Dateinamen und Pfad ab dem Verzeichnis des Moduls angegeben werden (oxtplblocks:OXFILE).
Beispiel
:
/views/blocks/checkoutUserForm.tpl
anstatt nur mit dem DateinamencheckoutUserForm.tpl
. Besteht das Modul nur aus einer Datei und hat kein eigenes Verzeichnis, muss Dateiname und Pfad/modules/file_name
lauten. Dateinamen ohne Pfad werden noch für einige Zeit unterstützt.Sprachdateien für das Frontend wurden vom Verzeichnis
/out/lang/local
des Moduls nach/translations/local
verschoben. Die frühere Struktur wird noch für einige Zeit unterstützt.Sprachdateien für den Administrationsbereich wurden vom Verzeichnis
/out/admin/local
des Moduls nach/views/admin/local
verschoben. Die frühere Struktur wird noch für einige Zeit unterstützt.
Die Moduleinstellungen können jetzt geändert werden, ohne dass dafür das Module aktiviert werden muss.
Nicht mehr unterstützt¶
Alle in vorhergehenden Shop-Versionen als "deprecated" gekennzeichneten Funktionen, Variablen und Codestellen wurden entfernt. Siehe dazu die Übersicht Removed deprecated source in der OXIDforge.
Das Theme "Basic" wird nicht mehr gewartet und nicht veröffentlicht.
Die Zend Platform wird nicht länger unterstützt, da dieses Produkt von Zend eingestellt wurde. Die Unterstützung für den Zend Server bleibt bestehen.
Korrekturen¶
Korrekturen 4.7.0/5.0.0 Final: https://bugs.oxid-esales.com/changelog_page.php?version_id=164
Korrekturen 4.7.0/5.0.0 RC 2: https://bugs.oxid-esales.com/changelog_page.php?version_id=162
Korrekturen 4.7.0/5.0.0 RC 1: https://bugs.oxid-esales.com/changelog_page.php?version_id=159
Korrekturen 4.7.0/5.0.0 Beta 3: https://bugs.oxid-esales.com/changelog_page.php?version_id=156
Korrekturen 4.7.0/5.0.0 Beta 2: https://bugs.oxid-esales.com/changelog_page.php?version_id=146
Korrekturen 4.7.0/5.0.0 Beta 1: https://bugs.oxid-esales.com/changelog_page.php?version_id=132
Weiterführende Informationen für Entwickler finden Sie auf der OXIDforge: http://oxidforge.org/en/oxid-eshop-version-4-7-0-ce-pe-5-0-0-ee.html.