Die diesjährige Meet Magento in Leipzig

Die letzten beiden Tage fand in Leipzig wieder die jährlich stattfindende Meet Magento statt. Die Community traf sich bereits zum fünften Mal in Leipzig. Die Veranstaltung richtet sich an die verschiedensten Zielgruppen wie Händler, Berater, Strategen oder Entwickler. Wie im letzten Jahr hatte ich allerdings das Gefühl, dass die Veranstaltung deutlich von den Techies dominiert wird. Auf EffektWelle.de habe ich bereits einen Beitrag mit Eindrücken zur Veranstaltung veröffentlicht, daher möchte ich mich in diesem Artikel mehr auf die technischen Themen konzentrieren. Grundsätzlich bietet die Meet Magento drei parallele Tracks: Allgemeine Themen zu Magento, einen Track für die eher Business-lastigen Besucher und der dritte Track für Magento-Entwickler. Letzterer hatte auch mich am meisten interessiert. Neben den üblichen Themen wie Theming und Modulentwicklung ging diesmal hauptsächlich um folgende Schlagworte: Entwicklungsprozess mit Magento Automatisiertes Testen von Magentoumgebungen Sicherheit Ehrlicherweise fand ich die Vorträge etwas enttäuschend, kratzten die Referenten oft nur an der Oberfläche ihres Themas. Die Frage ist allerdings, wie tief man in einem 30-minütigen Vortrag in die Materie einsteigen kann, zumal das zu erwartenden Know-how im Publikum sicherlich sehr heterogen ist. Ein Vortrag hat mir allerdings sehr gut gefallen, da mir das Thema selbst Unbehagen bereitet: der Entwicklungsprozess mit Magento bzw. die Frage, ob es diesen überhaupt gibt. Entwicklungsprozess mit Magento Ich selbst komme aus der Java-Welt. Mit PHP habe ich mich erst viel später beschäftigt. Aber dank des Erfolgs von Content Management Systemen wie Typo3, WordPress und Drupal oder dem Shopsystem Magento, kommt man um PHP nicht herum. In den letzten Jahren hat zwar auch in dieser Scriptsprache die objektorientierte Programmierung Einzug gehalten, aber eine definierten Modellierungs- und Entwicklungsprozess auf...

Deutschsprachiges Magento User- und Entwickler-Forum

Ich arbeite nun schon seit einigen Jahren mit Magento (seit Version 1.3). Es macht sehr viel Freude, mit dieser Software zu arbeiten, obwohl sie sehr komplex und nicht leicht zu durchschauen ist. Vor allem Magento-Anfänger tun sich sehr schwer, einen Einstieg in das Shopsystem zu finden. Nach dem raketengleichen Aufstieg von Magento und der inzwischen großen Verbreitung des Systems gibt es zwar zahlreiche deutschsprachige Bücher, einige Blogs sowie einen IRC Chat für Magento-Entwickler, aber meist weiche ich doch auf englischsprachige Quellen aus. Das offzizielle Forum unter magentocommerce.com finde ich allerdings sehr schelcht umgesetzt: die Suchfunktion dort ist ein Graus und auf Antwort braucht man im deutschen Sprachbaum kaum zu hoffen. Warum ein deutschsprachiges Magento-Forum? Dabei fehlt mir des öfteren einfach ein einigermaßen frequentiertes, vorzugsweise deutschsprachiges Diskussionsforum. Ich arbeite nicht täglich mit Magento, so dass ich nicht immer und jederzeit im genannten IRC Chat unterwegs bin (oder sein möchte). Und sich dort immer nur anzumelden, wenn man eine Frage hat, ist auch doof. Es gab anscheinend mal ein Forum von Rouven Alexander Rieker, Autor zweier Magento-Bücher, aber dieses scheint laut seiner Info auf Twitter nicht mehr zu existieren. In einem anderen E-Commerce-Forum mit eigenem Magento-Unterforum hatte ich mich dann noch angemeldet, aber da wird trotz Registrierung jede Frage und jede Antwort vom Moderator nach Prüfung freigeschalten. Das ist mir dann doch etwas zu zäh. Also, es hilt nichts: Wenn einen etwas stört, dann muss man es halt selber machen. Meckern alleine genügt. In diesem Sinne habe ich einfach mal ein eigenes Magento-Forum aufgestetzt. Das Forum findet Ihr unter: http://virtual-commerce.de/magento-forum/ Dabei geht es mir um den Austausch zu folgenden Themen: Allgemeine...

Magento: Compiler deaktivieren, wenn das Backend nicht erreichbar ist

Geht man mit seinem neuen Webshop online, dann wird man vor allem zu Beginn viele eigene Testbestellungen machen. Leider ist es nicht so ohne weiteres möglich, diese Bestellungen in Magento auch wieder zu löschen. In zahlreichen Blogbeiträgen findet man Beschreibungen, wie man durch Eingreifen in zahlreiche Datenbanktabellen diese Bestellungen wieder los wird. Aber wie so oft, gibt es für diesen Fall auch entsprechende »Extensions« dafür, z.B. »Delete Orders« von mgt-commerce.de, die sogar kostenfrei angeboten wird. Nachdem Download habe ich die Extension erst auf meinem Testsystem installiert: läuft einwandfrei. Im Backend kann man nun ein bis beliebig viele Bestellungen auswählen und löschen. Also rauf aufs produktive System und wie beschrieben den Cache geleert. Das war’s dann. Was auf dem Testsystem so schön auf Anhieb lief, mochte im produktiven System nun gar nicht. Während aber das Magento-Frontend anstandslos weiter lief, war das Backend nicht mehr erreichbar. Also alles wieder rückgängig gemacht und die Dateien der Extension gelöscht, aber der Zustand blieb unverändert: kein Zugriff. Wie also wieder an das Backend herankommen? Per FTP unter »var/cache« und »var/session« die Caches geleert und ich bekam zumindest wieder die Login-Maske von Magento angezeigt. Nur nach dem Login bekam ich wieder nur die Magento-Fehlermeldung »There has been an error processing your request« angezeigt. Also erst mal die »local.xml.sample« im Verzeichnis »errors« in »local.xml« unbenannt um mir die vollständige Fehlermeldung des Systems anzeigen zu lassen. Die Fehlermeldung gab mir mit der Zeile »Mage registry key „_singleton/Modulename/observer“ already exists« immerhin einen Hinweis darauf, dass die Extension nicht vollständig entfernt war und meinen Verdacht auf die Kompilierung lenkte. Nur wie deaktiviert man die Magento Funktion »Compilieren« wieder, wenn...

Magento: den Onepage Checkout anpassen

Trotz der Komplexität der Shopsoftware Magento arbeite ich sehr gerne mit dem Tool. Der Nachteil der nicht auf Anhieb zu durchschauenden Architektur des Shopssystems wird durch die dadurch gewonnene Flexibität mehr als aufgewogen. Bei der Anpassung des Onepage Checkouts für unseren Online-Fahrradladen Bikezeug hatte ich allerdings dann doch meine Zweifel, was die alltagstauglichekit von Magento angeht. Es geht nur um Kleinigkeiten, die anzupassen sind: Da unser Onlineshop an Privatpersonen verkauft und versendet, benötigen wir die Felder Firma und Fax nicht. Das Pflichtfeld Region macht in den USA vermutlich Sinn, aber in Deutschland einen Kunden nach seinem Bundesland zu fragen ist wohl eher überflüssig. Die Eingabe der Telefonnummer soll optional und kein Pflichtfeld sein. Viele Menschen geben sehr ungern ihre Telefonnummer weiter. Von Kunden so wenig Daten wie möglich abzufragen hat zwei Gründe: einmal erhöht es die Konversionsrate bei Bestellungen, zum Anderen fordert auch der Datenschutz zurecht möglichst wenig Daten abzufragen (so viel wie nötig, so wenig wie möglich). Aber ich habe dann doch gestaunt, was in Magento alles zu tun ist, um diese kleine Änderung durchzuführen. Man muss nicht nur die Ausgabe des Formulars im Frontend anpassen, sondern auch die Validierung der Dateneingabe deaktivieren. Es sind drei Schritte notwendig: Anpassen der Dateien, welche die Formulare erzeugen Anpassen des abstrakten Models der Adresse (»Mage_Customer_Model_Address_Abstract«) Änderungen in den Datenbanktabelle »eav_attribute« (»customer_eav_attribute«) Schritt 1: Anpassung der Formulardateien In vielen Blogbeiträgen findet man folgende Dateien, die zu ändern sind: template/customer/address/edit.phtml template/checkout/onepage/shipping.phtml template/checkout/onepage/billing.phtml Es liegt vermutlich an der Magento-Version 1.7, dass es bei mir folgende Dateien waren, die ich ändern musste (außerdem habe ich noch die Registrierung für die Benutzerkonten von den Pflichtfeldern befreit):...

Rückblick auf die Meet Magento #6.12 in Leipzig

Die letzten Jahre hatte ich es mir immer wieder vorgenommen, aber nie geschafft: Endlich mal die MeetMagento zu besuchen. Wie es aber der Zufall wollte, hatte ich die letzten eineinhalb Jahre sehr eng mit der Firma netresearch aus Leipzig zusammen gearbeitet. Da netresearch der Ausrichter der Meetmagento in Deutschland ist, lag es dieses Mal also nahe, die Konferenz zu besuchen. Um was geht es bei Magento überhaupt? Magento ist ein Shopsystem, dass in einer frei verfügbaren Open Source Version sowie in einer lizenzpflichtigen Enterprise Edition von der Firma Magento Inc. aus den USA angeboten wird. Magento hat in den letzten drei, vier Jahren eine unglaubliche Verbreitung und ein enormes Wachstum erfahren. Den Ritterschlag erhielt die Firma letztes Jahr, als sie vom eCommerce-Riesen eBay übernommen wurde. Dank seiner modularen Architektur und der damit verbundenen Flexibilität hat Magento schnell einen großen Freundeskreis unter Entwicklern gefunden. Diese sehr aktive Community treibt die Entwicklung der Shop-Software in Form zahlreicher Module rasant voran. Die Meet Magento ist letztlich nichts anderes ein jährliches Treffen dieser Community. Rico Neitzel eröffnet die Meet Magento Das ist auch ein wenig das Problem der Veranstaltung, den es sind hauptsächlich Entwickler, die sich dort treffen. Andererseits möchte die Veranstaltung aber auch die sogenannte Business-Seite ansprechen, denn ohne eine starkes Interesse seitens der Onlinehändler, die Magento einsetzen sollen, hat auch das Shopsystem keine Zukunft. Der Veranstalter netresearch versuchte den Spagat zwischen Technik und Business mit unterschiedlichen Vortragstracks zu lösen. So gab es neben sogenannten Panels mit Diskussionen zu verschiedensten Themen einen Business-Raum und einen Entwickler-Raum. Die Business-lastigen Vorträge waren dabei leider etwas sehr Werbe- und Marketinglastig. Dabei wurde die Erfolgsstory von...