Alles rund um Magento!

Archiv des Monats Mai, 2010

Blog live auf Leipzig

Im Moment läuft in Leipzig die Keynote von Roy Rubin über die Entwicklung von Magento und die kommende M-Commerce-Plattform von Magento. The North Face wird der erste Magento-Shop sein, der direkt mit iPhone-App daher kommt. Sieht schon relativ überzeugend auf. Aber da kann sich wohl jeder selbst überzeugen, die iPhone-App für “The North Face” wird heute veröffentlicht! Laut Roy Rubin folgt eine Version für das iPad und eine für die Android Plattform noch dieses Quartal.

Außerdem scheint Magento direkt aus den eigenen “Fehlern” zu lernen und hat jetzt eine zentrale Person für Dokumentation, Ausbildung und Zertifizierung – danke Cara! Wir sind gespannt, wie die Zertifizierung aussehen wird.

Heimlicher (peinlicher) Höhepunkt war das typisch amerikanische Magento-Success-Story-Video: Magento ist eigentlich vom Pol des Saturns und aus einem bisher unbekannten Material, dass ab sofort auf Position 119 des Periodensystems aufgeführt wird. Ich wusste schon immer, dass Magento irgendwie außerirdisch wirkt.

Probleme beim Mergen von CSS & JS in Magento 1.4

Mir ist es jetzt schon 2-3 mal passiert, dass nach dem Anschalten der neuen Merging Funktion für CSS und JavaScript Dateien viele Seiten nicht mehr funktionierten, weil Magento aus unerklärlichen Gründen absolute Pfade zu den CSS / JS Dateien im Quellcode angab. Nach ein wenig googlen, fand ich viele Leute, die dasselbe Problem hatten, aber eine akzeptable Lösung hatte ich nicht gefunden. Also nahm ich die Sache selber in die Hand.

Mit einem Blick in die exception.log (Aktivierbar unter System -> Konfiguration -> Entwickleroptionen -> Log Einstellung -> Aktiviert = Ja) findet man dann schon recht schnell eine Exception, die mit einer JavaScript oder CSS Datei zu tun hat. Bei mir sah das ungefähr so aus:

exception ‘Exception’ with message ‘Warning: filemtime() [function.filemtime]: stat failed for /var/www/js/calendar/lang/calendar-en.js in /var/www/app/code/core/Mage/Core/Helper/Data.php on line 631′ in /var/www/app/code/core/Mage/Core/functions.php:245

Hier will Magento mit der Methode filemtime prüfen wann die JavaScript datei calendar-en.js das letzte mal verändert wurde. Dummerweise gab es diese Datei bei mir nicht mehr und das Merging Script verabschiedete sich mit dieser Exception. Anstatt diese Datei einfach weg zu lassen, stoppt Magento den ganzen Merging Prozess und gibt einen halbfertigen Quellcode aus. Das ganze könnte man verhindern, wenn man vorher checken würde ob die Datei überhaupt existiert. Aber da ja deutlich BETA hinter diesem Feature steht, muss man mit solchen Fehlern rechnen.

Kleines Fazit:

Die Probleme beim Merging kommen meistens von fehlende CSS /JS Dateien oder keinen Schreibrechten in /media/css/ oder /media/js/. Mit einem Blick in die exception.log kann man sehr schnell die Ursache für sein Problem finden.

escapeHtml() statt htmlEscape()

Ich weiß noch, dass ich bei meinen ersten Schritten im Magento immer fälschlicherweise escapeHtml() geschrieben habe. Irgendwie erschien mir dieser Methodenname eingänglicher als htmlEscape(). Diese Erkenntnis scheint sich inzwischen auch bei Varien durchgesetzt zu haben, denn seit 1.4.0.0-rc1 ist htmlEscape() als deprecated (dt. veraltet) markiert und durch die neue escapeHtml()-Methode ersetzt worden:

/**
 * @deprecated after 1.4.0.0-rc1
 * @see self::escapeHtml()
 */
public function htmlEscape($data, $allowedTags = null)
{
    return $this->escapeHtml($data, $allowedTags);
}

Bessere Suchergebnisse mit FINDOLOGIC

Das die Suchfunktion nicht gerade zu den Stärken von Magento gehört ist kein Geheimnis. Aufgrund der Komplexität dieses Themas wird es jedoch auch bei anderen Shop-Systemen oftmals an externe Dienstleister wie FACT-Finder oder epoq delegiert. Relativ neu in diesem Markt ist der österreichische Anbieter FINDOLOGIC, der mit seinem attraktiven Preis-Leistungs-Verhältnis gerade für kleine und mittlere Shops interessant ist.

FINDOLOGIC bietet die üblichen Features der Suchanbieter, wie Singular/Plural-Erkennung und die Korrektur von Tipp- und Rechtschreibfehlern sowie sinnverwandte Zusammenhänge und intelligentes Ranking um die Suchergebnisse zu verbessern, dass die angebotenen Produkte von den Kunden auch gefunden werden. Der Such-Service wird zum Komplettpreis bereits ab 30 € im Monat angeboten – dieser Preis gilt mit Anzeige das FINDOLOGIC-Logo auf der Suchergebnis-Seite.

Die Magento-Extension um die FINDOLOGIC-Suche anzubinden wurde  von Flagbit für die Österreicher entwickelt und kostenlos in Magento-Connect veröffentlicht. Neben dem Suchergebnis wird auch die Auto-Vervollständigung von FINDOLOGIC gefüttert und sollten deren Server ausnahmsweise einmal nicht erreichbar sein, wird automatisch die normale Magento-Volltextsuche verwendet.

, sinnverwandte Zusammenhänge und intelligentes

Ranking