Magento

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.

tiefe-teller.de verwendet Magento-Plentymarkets-Schnittstelle

Allgemein, E-Commerce, Magento, Magento-Plentymarkets-Schnittstelle

Seit 2011 betreibt Carsten Mähler seinen Shop www.tiefe-telle.de, der die gesamte Produktpalette vom einfachen Küchen-Accessoire über hochwertige Messer und Weingläser-Sets bis hin zu Porzellan- und Geschirrteilen – sprich: alles was das Küchenherz höher schlagen lässt – anbietet.

Das Shop-System, das noch 2012 mit einem Relaunch überarbeitet wurde, basiert auf der Shop-Software Magento. Da aber die Produktpalette von tiefe-teller.de immer vielseitiger wurde und gleichzeitig das Bestellvolumen zunahm, stellte sich bald die Frage, welches Warenwirtschaftssystem geeignet sei, um für die Kunden weiterhin einen optimalen Service und kurze Versandzeiten zu gewährleisten.

Magento-Shop von tiefe-teller.de
Online-Shop von tiefe-teller.de

Plentymarkets als Warenwirtschaftssystem für Magento

Die Entscheidung fiel auf das System von Plentymarkets, da dies nicht nur zur reinen Warenwirtschaft dienen kann, sondern auch die Anbindung weiterer Verkaufsplattformen und Preisportale wie Ebay, Amazon, Tradoria und den relativ neuen Zalando-Marktplatz (nur um die wichtigsten zu nennen) beinhaltet. Dabei besticht Plentymarkets durch seine Komfortabilität, Einfachheit und den gut erreichbaren Support. Als Frontend sollte allerdings weiterhin der Magento-Shop dienen, da dieser bereits hinsichtlich Usability und Kundenfreundlichkeit optimiert war und ein erneuter Relaunch auf Basis eines anderen Shopsystems zu aufwendig wäre.

Anwendung unserer Plentymarkets-Magento-Schnittstelle

Die Schnittstelle zur Übertragung aller Artikeldaten, Kundendaten und Bestellungen wurde dann durch uns realisiert, wobei wir auf unser selbst entwickeltes Modul Plentymage zurückgreifen konnten. Plentymage, die Plentymarkets-Schnittstelle für Magento, haben wir dabei individuell an die Wünsche von Carsten Mähler angepasst und in Zusammenarbeit mit ihm für den Versandprozess eingeführt. Seit Sommer diesen Jahres (2014) ist sie nun im Einsatz und arbeitet zuverlässig mit beiden Systemen zusammen.

Der Einsatz von Plentymarkets als Warenwirtschaftssystem für Magento ist ein typischer Anwendungsfall für unsere Schnittstelle Plentymage. Dabei schauen wir individuell auf die Bedürfnisse des jeweilige Shop-Betreibers und stimmen die Installation und Anpassungen mit ihm ab.

Wir sind froh, dass er sich für uns als Anbieter für Magento-Entwicklungen und -Schnittstellen entschieden hat und wünschen tiefe-teller.de alles Gute und weiterhin viel Erfolg!

Siehe auch:

Zur Produkt-Übersicht von Plentymage, der Schnittstelle für Magento und Plentymarkets
Zur Homepage von tiefe-teller.de (für Besteck, Küchen-Accessoirs, Messer-Sets und sonstige Chefkoch-Utensilien)

Übertragung eines Artikels von Plentymarkets nach Magento

Allgemein, E-Commerce, Magento, Magento-Plentymarkets-Schnittstelle

Dieser Artikel betrifft unsere Entwicklung Plentymage, die Plentymarkets-Magento-Schnittstelle, wir auf dieser Seite anbieten.

Wie lässt sich ein Artikel am einfachsten von Plentymarkets nach Magento importieren?

Befolgen Sie hierfür die folgenden Schritte:

  1. Falls Sie schon Artikel von Plentymarkets nach Magento importiert haben und sie wollen diese aktuell nicht noch einmal aktualisieren, so deaktivieren Sie das Attribut PM Data Transfer On für jeden einzelnen Artikel in Ihrem Produktkatalog.Am einfachsten funktioniert dies folgendermaßen:- Im Magento-Menu: Katalog –> Artikel verwalten
    – In der Artikelübersicht: Alle wählen (somit werden alle in Magento enthaltenen Artikel ausgewählt)
    – in Aktionen: Attribute aktualisieren und auf Absenden klicken.
    – In der Attribut-Übersicht: bei PM Data Transfer die Checkbox ändern anklicken und im Dropdown-Menu „Nein“ auswählen.Somit werden keine von Plentymarkets neu-importieren Artikel in Magento geändert und der Import von neuen Produkten bzw. Artikeln funktioniert etwas schneller.
  2. Im Menu auf Plentymage –> Manual Product Data Import/Export –> Product Data Import auswählen.
    Mit dieser Funktion wird der Import der Artikel aus Plentymarkets gestartet.
    Nach einer kurzen Weile sollten alle neu importieren Artikel im Katalog erscheinen. Neu importierte Artikel erkennt man daran, dass die Artikel-ID nach oben gezählt wird. D.h. die von Plentymarkets neu importieren Artikel sollten an oberster Stelle stehen.
  3. Bei einem nochmaligen Klick auf Plentymage –> Manual Product Data Import/Export –> Product Data Import werden die Texte der unterschiedlichen Sprachen (sofern verschiedene Sprachen konfiguriert sind) für die dafür vorgesehenen Store-Views gespeichert.
  4. Der Bestand der von Plentymarkets neu importierten Artikel wird vorerst mit der Menge 9999 angelegt. Um diesen direkt auch manuell zu aktualisieren wählen Sie folgendes aus dem Menu aus:
    Plentymage –> Manual Product Data Import/Export –> Stocks

Haben Sie Fragen zu dieser Vorgehensweise, so schreiben Sie uns einfach an info@espressolabs.de

Sie haben noch nicht die Plentymarkets-Magento-Schnittstelle? Dann finden Sie auf der unserer Schnittstellen-Übersicht weitere Informationen.

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.

Magento-Backend nicht mehr erreichbar – Was ist zu tun?

Allgemein, Magento

Im Folgenden möchte ich kurz erläutern, welche Schritte einzuleiten sind, wenn das Backend und/oder der Magento-Shop selbst nicht mehr erreichbar ist. Diese Auflistung ist also als eine kleine Notfall-Anleitung gedacht. Natürlich wird sie nicht in 100 Prozent der Fällt helfen, dennoch schaffen diese Methoden Abhilfe bei häufig auftretenden Problem (insb. bei der Installation von neuen Magento-Extensions, siehe hierfür auch Punkt 3)

  1. Cache leeren (auf die manuelle Art und Weise). Hierfür gibt es zwei Möglichkeiten:
    – Manuelles Löschen aller Dateien und Ordner im Verzeichnis: Magento-Root/var/cache
    – Kopieren des folgenden Code-Snipplets in eine php-Datei, die beispielsweise in folgendem Pfad abgelegt wird:
    MagentoRoot/clearcache/clearcache.php 

    Dann mit dem Browser auf die Seite www.mein-magento-shop.de/clearcache/clearcache.php navigieren und schon wird der Cache geleert.
    Funktioniert der Shop immer noch nicht, dann weiter mit 2.
  2. Session-Ordner löschen: Löschen des gesamten Inhalts des Verzeichnisses:  Magento-Root/var/session
    Sollte das auch nicht helfen, liegt das Problem höchstwahrscheinlich an dem Compiler.
  3. Kompilierungsmodus deaktivieren (per SSH): Leider ist dieser Schritt nur per SSH möglich. D.h. SSH muss erstens auf dem Server aktiv sein (was bei einfachem Webspace nicht immer der Fall ist). Falls dem aber sei und man sich mit SSh anmelden kann, ist folgender Schritt durchzuführen:
    Compiler-Status prüfen: 

    Als Reusltat sollte dann etwas ähnlich erscheinen, wie:

    Danach einfach folgendes eingeben:

    Falls dann folgendes erscheint, ist alles richtig gemacht worden:

    Dann noch alle kompilierten Dateien löschen:

    Und fertig:
  4. Falls das Problem durch die vorigen Schritte nicht gelöst werden konnte und das Problem höchst-wahrscheinlich an einer Magento-Erweiterung liegt, die soeben installiert wurde, kann es sein, dass sich der Compiler und die neue Magento-Extension im Wege stehen. Hierfür sind folgende Schritte durchzuführen:4.1) Magento-Extension deinstallieren oder deaktivieren. Die Deinstallation funktioniert über: www.mein-magento-shop.de/downloader, also dort, wo die Erweiterung im Falle einer geführten Installation gestartet wurde. Zur Deaktivierung muss man ins Datei-System von Magento einsteigen. Hierfür habe ich einen separaten Blog-Post geschrieben, der hier zu lesen ist: Einfache Deaktivierung von Magento-Erweiterungen.
    Nach der Deaktivierung oder der Deinstallation sollte das Backend im Normalfall wieder erreichbar sein.

    4.2) Compiler-Modus deaktivieren. Hierfür muss man sich wieder im Backend einloggen. Dann in System –> Werkzeuge –> Compiler –> Compiler deaktivieren. (Siehe auch folgende Screenshots)

    4.3) Neu-Installation oder Aktivierung der Extension. Nun kann nach gewohnter Form die Erweiterung wieder aktiviert bzw. neu installiert werden.

    4.4) Starten des Kompilierungsprozess. Dies wird wieder unter System –> Werkzeuge –> Compiler vorgenommen. Die Aktivierung des Compilers nicht vor dem Kompilierungsprozess vornehmen!

Diese Vorgehensweise sollte in den meisten Fällen helfen. Es sei außerdem an zwei Punkte zu erinnern

  1. Aus Performance-Sicht ist es sowieso gut, den Cache hin und wieder zu leeren. (insb. nach Veränderungen am System).
  2. Vor Veränderungen (und der Installation von Magento-Erweiterungen) sollte immer der Compiler deaktiviert werden.

 

 

Magento-Extensions – Das sollten Sie bei der Installation beachten

Allgemein, Magento

Mit Magento-Extensions können Sie Ihren Online-Shop professionalisieren. Bei falscher Installation können Sie allerdings auch viel kaputt machen. Folgend eine kurze Erläuterung, was Sie bei der Installation von Magento-Erweiterungen beachten sollten.

Für technische Erläuterungen zum Thema Magento-Erweiterungen lesen Sie auch meinen letzten Post (Magento-Extensions – Das sollte man wissen.)

Vorgehensweise für die Installation von Magento-Erweiterungen:

Vor der Installation der Extension:

  1. Nehmen Sie die Installation möglichst zu einer Zeit vor, in der wenige Zugriffe auf die Shop-Website erfolgen. (Zugriffszahlen sind abhängig von Wochentagen und Uhrzeiten. Samstag-Abends kaufen weniger Menschen im Web ein als Montags- oder Dienstags-Abends.)
  2. Deaktivierung des Kompilierungsmodus. Wichtig, weil im aktivierten Kompilierungsstatus der Shop nach der Installation des neuen Moduls eventuell nicht mehr erreichbar sein kann. Gehen Sie hierfür im Backend auf:
    System –> Werkzeuge –> Compiler –> Compiler deaktivieren (siehe auch folgende Screenshots)
  3. Leeren und Deaktivierung des Caches. Dies ist eine reine Vorsichtsmaßnahme.
    System –> Cache-Verwaltung: Danach:
    Klick auf „Magento Cache leeren“, danach:
    Alle Cache-Arten in der Liste ankreuzen, im Drop-Down-Menu „Aktionen“ „Deaktivieren“ auswählen und auf „Ausführen“ klicken.
  4. Vor der Installation nochmals auf die Kompatibilität achten. Bei Extensions, die auf www.magentocommerce.com gelistet sind, sollte dies direkt neben dem Button „Install Now“ stehen (siehe Screenshot)
  5. Installieren der Extension über den Downloader.Nach der Installation der Extension:
  6. Starten der Kompilierung (zuerst den Kopilierungsprozess starten dann erst den Compiler aktivieren, nicht umgekehrt!):
    System –> Werkzeuge –> Compiler –> Kompilierungsprozess starten.
  7. Leeren und Aktivierung des Caches (analog zu Schritt 3)

Fertig!

Sollte es dennoch Probleme geben und kann man sich möglicherweise nicht ins Backend einloggen, um diese zu beseitigen, so kann ich nur auf meinen folgenden Post verweisen:
Was ist zu tun, wenn das Magento-Backend nicht mehr erreicht wird?