Die Webshop-Software Magento eCommerce hat etwas mit Bayern München gemeinsam: man liebt sie oder man hasst sie, aber so richtig kalt lässt sie kaum einen, der sich näher damit beschäftigt (oder beschäftigen muss). Da wir mehrere Webshop-Projekte mit Magento betreiben dürfen, habe ich ausgiebig Erfahrung mit dem System gesammelt. Meine Meinung dazu: wie bei (fast) allen Produkten gibt es zwar gewisse Hürden zu meistern, doch insgesamt handelt es sich um einen überdurchschnittlich gut durchdachten und umgesetzten Shop.

Magento ist sehr mächtig. Daraus entsteht auch ein Großteil der Kritikpunkte. Die Vielfalt der Funktionen macht es nämlich leistungshungrig und komplex – was bedeutet, dass man einen gewissen Aufwand einkalkulieren muss, um einen anständigen Shop auf die Beine zu stellen. In der Realität kommt nämlich kaum ein Shop ohne Erweiterungen und Anpassungen aus. Und da man diese nur umsetzen kann, wenn man weiß, was wo zu tun ist, muss man sich in das System einarbeiten und dessen Grundlagen kennen lernen.

Genau das ist das Ziel meiner ersten Artikel-Serie Magento 1.4 Grundlagen“: ich möchte eine solide Basis schaffen, die Magento-Entwicklern die weitere Arbeit erleichtert. Wenn man weiß, wie der Code funktioniert, was er bereitstellt und was er nicht bereitstellt, kann man die Ärmel aufkrempeln und in den Eingeweiden des Systems wühlen, um die gewünschten Veränderungen und Verbesserungen durchzuführen.

Magento verfügt über eine große Community, die bereits über viele Themen geschrieben hat. Daher werde ich nicht bei Adam & Eva anfangen und beschreiben, wie man die Installation durchführt, wie man Kategorien und Produkte anlegt etc. Stattdessen möchte ich gleich ans Eingemachte gehen:

  • Ablauf eines Page-Requests: wir sehen uns (grob) an, welcher Code bei einem Seitenaufruf durchlaufen wird und welche Komponenten an der Verarbeitung der Abfrage beteiligt sind.
  • Basis-Klassen: es gibt in Magento einige wichtige Basis-Klassen, welche die Grundlage für weite Teile des Systems bilden. Die sollte man sich einmal näher angesehen haben, um zu wissen, womit man an den verschiedenen Stellen des Codes arbeiten kann.
  • XML-Konfigurationsdateien und Datenbankstruktur: zu guter Letzt sollte man sich auch die XML-Dateien und die Datenbankstruktur genauer ansehen. Vielleicht erübrigt sich dieser Punkt, weil die Themen in den vorherigen Postings aufgehen; lassen wir uns überraschen.

Ich beschränke mich dabei auf Magento 1.4 – neue Shops sollten nur noch mit dieser Version umgesetzt werden, da etliche Verbesserungen und Veränderungen gegenüber dem 1.3.x-Zweig eingeflossen sind. Wo es sich anbietet, werde ich auf Unterschiede zwischen den beiden Versionen eingehen.

Sind die Punkte einmal erledigt, kommen wir zu dem Teil, wo wir unser neu gewonnenes Wissen umsetzen können: die Erweiterung von Backend und Frontend, Maßnahmen zur Verbesserung der Performance, die Einbindung von externen Systemen und nützlichen Extensions, Deployment und Unit-Testing etc. etc. Ich lass’ mich da überraschen, ob von eurer Seite Wünsche und Vorschläge kommen.

Ach übrigens: demnächst soll das Buch “Magento – Das Handbuch für Entwickler” erscheinen (laut O’Reilly Anfang Juli, laut Amazon Anfang August). (Update 26.09.2010: ich habe eine Rezension zu dem Buch geschrieben.)  Ich bin bereits sehr gespannt darauf, da hier ebenfalls ein tiefer Einblick in Magento vermittelt werden soll. Ursprünglich hätte das Buch letztes Jahr erscheinen sollen: ich hoffe, dass es die Version 1.4 durch die Verschiebung in das Buch geschafft hat. Die sehr nette Ansprechpartnerin bei O’Reilly konnte mir das zwar nicht bestätigen, war allerdings “nur” die Urlaubsvertretung und ging davon aus, dass 1.4 behandelt wird. Die Kapitelübersicht, die mir ebenfalls geschickt wurde, klingt auf jeden Fall vielversprechend.

So viel also dazu – nun aber auf in die Welt von Magento & co!

Ähnliche Artikel