PHP

Produkt-Suche in Magento verbessern

Allgemein, E-Commerce, Magento, Magento-Extension, PHP

Zwar ist im Shop-System von Magento eine Suche eingebaut, sie ist allerdings nur bedingt zu gebrauchen. Eine grundlegende Funktion wird zwar geboten, doch der User findet selten wirklich den Artikel oder eine Übersicht an Produkten, die er erwarten würde.

Die eingebaute Magento-Suche

Doch bevor wir auf die Optimierung der Suche durch Extensions oder Drittanbieter kommen, ein kurzer Überblick über die eingebauten Features der Magento-Suche:

  • Synonym-Management: Unter Katalog -> Suchbegriffe erhält der Shop-Betreiber die Möglichkeit, bestimmte Suchbegriffe durch andere zu ersetzen. Wenn der Kunde beispielsweise “Acessoirs” eingibt, kann man den Suchbegriff automatisch  in “Accessoires” ändern.
  • Einstellungen für den verwendeten Such-Verfahren in der Datenbank. Unter System -> Konfiguration -> Katalog: Katalog -> Katalogsuche ist es möglich, die Magento-Suche ein wenig anzupassen. So lässt sich für die Art der Suche beispielsweise angeben, welches MySql-Verfahren (Like, Fulltext oder Combine) verwendet werden soll, um die Suchergebnisse aufzulisten.

Viele Einstellungen zur Optimierung sind dies nicht: Die manuelle Pflege der Synonyme wird bei mehreren Produkten schnell viel zu aufwendig, und auch die Einstellungen zur Katalog-Suche bringen meist nicht das gewünschte Resultat.

Allgemeine Anforderungen für die Magento-Suche

Bei meiner Recherche bin ich davon ausgegangen, dass bei der Optimierung der Suche folgende Kriterien in jedem Fall erfüllt sein sollen:

  • Generell: Bessere und passendere Ergebnisse und auch Kategorien in den Ergebnissen
  • Suchvorschläge sollen angezeigt werden (d.h. dass unterhalb der Such-Eingabe beispielsweise passende Artikel angezeigt werden)

Anforderungen für bessere Suchergebnisse bei Webshops

Die Suche in einem Webshop ist nichts triviales, es sei daran erinnert, dass eine der größten und mächtigsten Firmen unserer Zeit auf einen intelligenten Such-Algorithmus basiert und viel Gelt investiert um diesen tag-täglich zu verbessern. Will man also die Suche im eigenen Online-Shop merklich verbessern, so führt der Weg an einer (kostenpflichtigen) Magento-Extension kaum vorbei. Nur gibt es davon so viele, dass man sich hier ebenfalls dumm und dusselig suchen kann.

Wie so oft kommt es darauf an, was man mit der Suche erreichen möchte. Die Überlegung folgender Fragestellungen bietet einen ersten Anhaltspunkt:

  • Wie viele Artikel werden durchsucht?
  • Gibt es Besonderheiten, die bei der Artikelsuche beachtet werden sollen, z.B. dass bestimmte ?
  • Zugriffszahlen: Wie viele User greifen auf die Seite zu oder sollen darauf zugreifen?
  • Sollen auch statische Inhalte durchsucht werden? Z.B. wenn ein Kunde nach “Öffnungszeiten” sucht.
  • Was ist das Budget, das einmalig bzw. regelmäßig investiert werden  kann.

Die Wichtigkeit der Suche ist auch abhängig von den Usern des Webshops selbst, denn es gibt unterschiedliche Nutzertypen: Einige versuchen alles über die Suche zu finden, da sie das von Google gewöhnt sind, andere wiederum versuchen sich, durch die Navigationselemente durch zu hangeln. Eine Beobachtung von Test-Nutzern einer Website kann hierbei schon viel Klarheit schaffen. Konkret gefragt: Bei welchem Anteil der User ist die Suche wichtig?

Die besten Magento-Extensions für eine bessere Suche (unsere Auswahl)

Folgende Tabelle gibt einen Überblick über passende Suche-Erweiterungen für Magentoshops, die meist den allgemeinen Anforderungen gerecht werden.

Magento-ExtensionPro und Contra und BesonderheitenPreise
Advanced Search with Weighted Attributes & Auto-CompletePro:
- Diverse nützliche Features
- Attribute können in der Suche unterschiedlich gewichtet werden
Contra:
- in Tests waren die Verbesserungsvorschläge für falsche Rechtschreibung nicht überzeugend
Passend für:
Kleine Shops
Einmalig:
$199
Better Store Search
Passend für kleine Shops
Pro:
- Recht gute Funktionalität im Test
- Vorschläge für falsche Rechtschreibung
Contra:
- keine gute Darstellung der Suche-Vorschläge.
Passend für:
Kleine Shops
Einmalig:
$249
SearchanisePro:
- Sehr gute Ergebnisse im Test
- Mehrsprachigkeit wird unterstützt
- Synonym-Management
Contra:
- Höherer Aufwand durch Cloud-basiertes Setup (was erst bei einer größeren Anzahl an Produkten Sinn macht)
- Monatliche Kosten von ca. 7-14 Euro
- kein guter Support (kein Impressum, etc. auf Seite)
Passend für:
Mittlere Unternehmen
Monatlich:
$9 - $189
(je nach Faktoren wie Anzahl der Produkte)
Sphinx-Search-UltimatePro:
- Synonyme werden beachtet (d.h. es können einzelne Wörter ersetzt werden)
- Landing-Pages können konfiguriert werden (z.B. wenn der User "Kontakt" eingibt)
- Man kann zusätzlich Such-Kategorien angeben (ähnlich Amazon)- unterstützt verschiedene Sprachen
- Sehr guter Support von Mirasvit (nach unserer Erfahrung)
- Mehrsprachigkeit wird unterstützt
- Produkte und Kategorien werden in den Suchvorschlägen angezeigt.
Passend für:
Mittlere Unternehmen
Einmalig:
$149
FindologicBesonderheiten:
- Ab ca. 1000 Produkte und ca. 5000 Besucher montl. sinnvoll.
- Vor allem wenn ganz verschiedene Produkte im Protfolio sind, werden bessere Suchergebnisse erzielt.
- Landing-Pages und bessere Filterungsmöglichkeiten (nur Advanced).
- Mehrsprachigkeit wird unterstützt.
- Produkte, Suchbegriffe und Kategorien werden in den Suchvorschlägen angezeigt
Contra:
- Aufwendigeres Setup, da Findologic als Drittanbieter angebunden werden muss (zusätzliche Entwicklungskosten)
Passend für:
Mittlere Unternehmen / Enterprise
Einmalig:
150 €

Monatlich:
ab 50 €
(ab 20.000 Artikel höhere Preise)
Solr Bridge SearchPro:
- äußerst professionell
- Die Ergebnisse werden direkt auf der Ergebnisseite angezeigt
- Gute Performance durch Dokumenten-Orientierte DB
- Mehrsprachigkeit wird unterstützt
- Produkte und Suchbegriffe werden in den Suchvorschlägen angezeigt
Contra:
- Aufwendigere Installation
- Nur in Kombination mit Solr-Installation (Hierbei ist Voraussetzung, dass Solr auf dem Server installiert ist und gewartet wird)
Passend für:
Mittlere Unternehmen / Enterprise
Einmalig:
€450
(Zusatzkosten evtl. durch Server-Upgrade oder Pflege der Solr-Installation)

Erfahrung und Emfehlung

Wir haben bereits mit mehreren hier aufgelisteten Extensions gearbeitet, tatsächlich gibt es aber eine so große Auswahl, dass man sie kaum überblicken kann. Dennoch können wir guten Gewissens zwei Empfehlungen aussprechen, denn mit folgenden Partnern haben wir sehr gute Erfahrung gemacht.

  • Als kostengünstige Variante ist Sphinx-Search-Ultimate unserer Meinung nach die beste Wahl: Sie bietet alle nötigen Features für Shops mit einer übersichtlichen Anzahl an Artikel der Support von Mirasvit ist außerdem vorbildlich.
  • Ab ca. 1000 bis 5000 Produkte sollte man entweder auf eine Solr-Datenbank zurückgreifen oder mit einem externen Anbieter zusammenarbeiten. Hierbei bietet sich Findologic als passendes Unternehmen an. Die Integration von Findologic in den Magento-Shop ist relativ überschaubar.

Benötigen Support bei der Verbesserung der Suche in Magento? Als Magento-Berater und -Programmierer bieten wir Ihnen gerne unsere Hilfe an. Hier geht’s zum Kontakt.

Magento 404-Error bei Unterseiten (z.B. nach Server-Umzug)

Allgemein, E-Commerce, Magento, PHP

Das Problem:

Man ist mit Magento auf einen anderen Server umgezogen, hat eine Testumgebung unter einer Test-Domain eingerichtet.

Hierfür:

  • hat man schon die kompletten Daten in das andere Verzeichnis kopiert,
  • hat die Datenbank ebenfalls kopiert,
  • hat in der local.xml den Datenbank-Zugriff geändert, so dass nun auf die neue Datenbank zugegriffen wird.
  • Außerdem wurde in der Tabelle: core_config_data die URL (in Spalte “value”) auf die neue URL geändert.
    (Dies geschieht, in dem man “value” in den Zeilen mit den folgenden Werten für “path” ändert: 

    • web/unsecure/base_url
    • web/secure/base_url

Nachdem man diese handwerklichen Schritte des Serverumzugs von Magento erledigt hat, kann es sein, dass die Unterseiten des Shops nicht richtig aufgerufen werden, bzw. ein 404-Error ausgegeben wird. (Object not found, oder so ähnlich)

Die Lösung:

Folgende Änderungen in der Tabelle core_config_data müssen gemacht werden:

UPDATE core_config_data SET value = ‘0’ WHERE core_config_data.path = ‘catalog/seo/save_rewrites_history’;

und:

UPDATE core_config_data SET value = ‘0’ WHERE core_config_data.path = ‘web/seo/use_rewrites’;

Mit ein bisschen MySQL-Knowledge kann man sogar herauslesen, wie man die Tabellen manuell verändern muss, damit man die Änderung eintritt.

Problem gelöst!

Comments welcome!

Magento Compiler manuell deaktivieren

Allgemein, Magento, Magento-Performance, PHP

Ich hatte in den letzten Posts ein wenig über die Wichtigkeit des Compilers von Magento geschrieben. Beispielsweise wenn das Backend von Magento nicht mehr erreichbar ist, kann dies am Compiler liegen. Außerdem sollte man den Compiler deaktivieren, wenn man eine neue Extension installiert.

Hier eine kleine Ergänzung zum Thema Compiler manuell deaktivieren, was nämlich sehr einfach ist, wenn man folgende Schritte ausführt.

  1. Im Verzeichnis MagentoRoot/includes befindet sich die Datei: config.php
  2. Diese Datei enthält im Wesentlichen nur zwei Zeilen. Nachfolgend die Datei im Zustand “Compiler aktiviert”:
  3. Zum Deaktivieren vor die erste Zeile eine Raute setzen. Nachfolgend die Datei config.php für den Zustand “Compiler deaktiviert“:

Das war’s schon. Der Compiler ist nun deaktiviert, und falls das Backend vorher nicht erreichbar war, war die Datei includes/config.php vielleicht der Knackpunkt.

Man kann die Funktionalität der Datei includes/config.php auch mal testen, indem man im Backend den Compiler aktiviert bzw. deaktiviert und dann in die Datei schaut. Dann fällt die Veränderung sofort auf.