© saicle/Shutterstock.com
PHP Magazin
Ausblick auf die neue Shopware-Version 4.2.0

Shopware unter der Lupe

Seit dem letzten Major-Release hat sich bei Shopware einiges getan. Wir können uns auf viele neue Funktionen freuen und wollen die Gelegenheit nutzen, einen Blick darauf zu werfen.

Thomas Eiling


Neu ist zum Beispiel die verbesserte Unterstützung der Mehrsprachigkeit, neue integrierte Komponenten (Monolog, Dependency Injection Container und Composer), neue Plug-in-Hilfen (Autovervollständigung, einfacheres Erstellen von Einkaufsweltelementen und neuen Events), Shopware CLI Tools auf Basis von Symfony 2 Console Component, Unit Test für Plug-ins, SEO-Verbesserungen bei den Herstellerseiten und viele Optimierungen am REST-API. In diesem Artikel werden wir die wichtigsten Änderungen kurz beschreiben und evaluieren. Die Neuerungen beim Unit Testing für Plug-ins werden in einem separaten Artikel vorgestellt.

Neue integrierte Komponenten

Die Integration von Composer für die wichtigsten Dritt­anbieterprodukte in Shopware ist sehr erfreulich. Damit einhergehend hat Shopware das Zend Framework auf 1.12.3, Symfony Components auf 2.4 und Doctrine auf 2.4 aktualisiert.

Durch die Integration von Monolog gibt es nun drei verschiedene Möglichkeiten, Logausgaben zu erstellen. Die altbekannte Methode mit Shopware()->Log() ist als „deprecated“ gekennzeichnet. Die Methode Shopware()->Corelogger() ist für den Shopware-Core vorgesehen. Die Logdateien werden unter /logs/core_production-YYYY-MM-DD.log gespeichert und nach vierzehn Tagen gelöscht. In zukünftigen Shopware-Versionen wird man auch jeden beliebigen anderen Monolog-Handler verwenden können.

Die zweite Möglichkeit ist die Methode Shopware()->­­Pluginlogger(). Sie ist für den Einsatz in eigenen Plug-ins vorgesehen. Sie speichert, wie der Corelogger, die Logdateien unter /logs/ – nur mit einer kleinen Änderung am Dateinamen: plugin_production-YYYY-MM-DD.­log. Die Datei wird wie beim Corelogger einmal täglich neu erstellt und im identischen Intervall gelöscht.

Zu guter Letzt gibt es die Methode Shopware()->De­bug­logger(), die sich für den spontanen Debugging-Einsatz empfiehlt. Hier wird keine Logdatei erstellt, sondern die Information wird, wenn das Debug-Plug-in aktiv ist, direkt in der Konsole des jeweiligen Browsers ausgegeben.

Ein Plug-in, das die drei Methoden verwendet, ist in Listing 1 zu sehen.

Listing 1subscribeEvent( 'Enlight_Controller_Action_PostDispatchSecure_Frontend', 'onPostDispatchSecure' ); $this->registerController('Frontend', 'Magazin'); return TRUE; }  public function onPostDispa...

PHP Magazin
Ausblick auf die neue Shopware-Version 4.2.0

Shopware unter der Lupe

Seit dem letzten Major-Release hat sich bei Shopware einiges getan. Wir können uns auf viele neue Funktionen freuen und wollen die Gelegenheit nutzen, einen Blick darauf zu werfen.

Thomas Eiling


Neu ist zum Beispiel die verbesserte Unterstützung der Mehrsprachigkeit, neue integrierte Komponenten (Monolog, Dependency Injection Container und Composer), neue Plug-in-Hilfen (Autovervollständigung, einfacheres Erstellen von Einkaufsweltelementen und neuen Events), Shopware CLI Tools auf Basis von Symfony 2 Console Component, Unit Test für Plug-ins, SEO-Verbesserungen bei den Herstellerseiten und viele Optimierungen am REST-API. In diesem Artikel werden wir die wichtigsten Änderungen kurz beschreiben und evaluieren. Die Neuerungen beim Unit Testing für Plug-ins werden in einem separaten Artikel vorgestellt.

Neue integrierte Komponenten

Die Integration von Composer für die wichtigsten Dritt­anbieterprodukte in Shopware ist sehr erfreulich. Damit einhergehend hat Shopware das Zend Framework auf 1.12.3, Symfony Components auf 2.4 und Doctrine auf 2.4 aktualisiert.

Durch die Integration von Monolog gibt es nun drei verschiedene Möglichkeiten, Logausgaben zu erstellen. Die altbekannte Methode mit Shopware()->Log() ist als „deprecated“ gekennzeichnet. Die Methode Shopware()->Corelogger() ist für den Shopware-Core vorgesehen. Die Logdateien werden unter /logs/core_production-YYYY-MM-DD.log gespeichert und nach vierzehn Tagen gelöscht. In zukünftigen Shopware-Versionen wird man auch jeden beliebigen anderen Monolog-Handler verwenden können.

Die zweite Möglichkeit ist die Methode Shopware()->­­Pluginlogger(). Sie ist für den Einsatz in eigenen Plug-ins vorgesehen. Sie speichert, wie der Corelogger, die Logdateien unter /logs/ – nur mit einer kleinen Änderung am Dateinamen: plugin_production-YYYY-MM-DD.­log. Die Datei wird wie beim Corelogger einmal täglich neu erstellt und im identischen Intervall gelöscht.

Zu guter Letzt gibt es die Methode Shopware()->De­bug­logger(), die sich für den spontanen Debugging-Einsatz empfiehlt. Hier wird keine Logdatei erstellt, sondern die Information wird, wenn das Debug-Plug-in aktiv ist, direkt in der Konsole des jeweiligen Browsers ausgegeben.

Ein Plug-in, das die drei Methoden verwendet, ist in Listing 1 zu sehen.

Listing 1subscribeEvent( 'Enlight_Controller_Action_PostDispatchSecure_Frontend', 'onPostDispatchSecure' ); $this->registerController('Frontend', 'Magazin'); return TRUE; }  public function onPostDispa...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang