Google Shopping Feed mit Magento erstellen

Allgemein

Folgend ein kurzer Beitrag zu Google Shopping Feeds und eine Anleitung zur Befüllung der Produkt-Liste im Google Merchants Center.

Was ist der Google-Shopping-Feed?

Goolge bietet an, dass man als Händler die eigenen Produkte direkt bei Google-Shopping verfügbar macht. Hierfür muss man sich mit folgendem Link im  Google Merchants Center registrieren:

https://www.google.com/retail/merchant-center/

Google-Shopping-mit-Magento

Wenn man angemeldet ist, muss man in regelmäßigen Abständen seine Produkte updaten. Zwar kann man das manuell handhaben. Es ist allerdings sehr aufwändig. Daher funktioniert die Aktualisierung am besten mit einem automatisierten Feed.

Welche Magento-Extension ist hierfür notwendig?

Gute Erfahrungen haben wir mit der Erweiterung von Amasty gemacht:

  • Feeds lassen sich durch Vorlagen erstellen (obwohl die meisten dafür für den Amerikanischen Markt vorgesehen sind)
  • Es können unterschiedliche Datenformate ausgewählt werden (CSV und XML, obwohl XML zu empfehlen ist, da hier häufige Formatierungsfehler vermieden werden.)
  • Verschiedene Uploadmethoden können gewählt werden (z.B. FTP oder nur die Bereitstellung der Datei)
  • Der Cronjob kann für jeden Feed separat eingestellt werden, sodass z.B. ein tägliches (oder stündliches) Update gemacht wird.
  • Individuelle Felder können erstellt werden

Hinzu kommt, dass der Support bei Amasty sehr gut funktioniert. Hier also der Link zur Extension:

https://amasty.com/product-feed.html

Kurzanleitung für die Erstellung eines Feeds

Als nächstes müssen wir den Feed erstellen. Diese Anleitung kann natürlich für jeden anderen Feed (shopping.com, ladenzeile.de, etc.) verwendet werden. Allerdings ist es sinnvoll dies an einem Beispiel zu erklären.

1. Custom Field erstellen (da ist später für die Kategorienzuordnung wichtig)

  • Katalog –> Product Feeds –> Custom Fields
  • Neu erstellen:
    • Name: Google Product Kategorie
    • Code: google_product_category
  • Tab Standard: Eine Haupt-Kategorie (Standard-Kategorie) auswählen und als “Default value” eintragen. Die Liste mit den Kategorien von Google erhält man unter: https://support.google.com/merchants/answer/1705911
  • Tab Transform: Hier wird das Matching der Kategorien vorgenommen, d.h. welche Shop-Kategorie im Magento-Shop gehört zu welcher Google Produkt Kategorie. Folgendermaßen vorgehen:
    • Berechnungsgrundlage: Kategorie
    • Eigene Shop-Kategorie auswählen
    • Als Output-Value die Kategorie-ID von Google angeben

2. Neuen Feed erstellen

  • Katalog –> Product Feeds –> Feeds
  • Dann Google.com als Template auswählen und “Add as Template” klicken
  • Der Feed sollte als XML erstellt werden. Das ist qualitativ hochwertiger, da Formatierungfehler vermieden werden.

3. Tab Allgemein:

  • Namen und Dateinamen angeben. Dieser muss mit dem erstellten Feed im Google Merchants Center übereinstimmen
  • Art: XML (empfehlenswert)
  • Modus: mind. täglich
  •  Delivery Type: z.B. FTP

4. Tab Inhalt:

Eventuell muss du das etwas abändern, da das Original-Template auf Englisch ist.
Hier ein Beispiel-XML-Text, der auch bei dir funktionieren sollte.
Beschreibung der einzelnen Felder findest du unter dem Support-Link von Google.
Falls du ein neues Feld hinzufügen möchtest:
  • Auf den Tag klicken. Z.B. <title>
  • Unten in der Maske Änderung vornehmen.
Das erstellt Feld “Google Product Kategorie” (siehe Schritt 1) taucht hier unter <g:google_product_category> auf

5. Tab Bedingungen

Hier kann man Bedingungen auswählen, um festzulegen, welche Produkte überhaupt erfasst werden sollen.

6. Tab Delivery

Falls FTP oder SFTP gewählt ist, erhält man hier die Daten direkt aus dem Google Merchants Center.

Fertig!

Das war’s! Bei Fragen könnt Ihr Euch jederzeit an mich wenden.

Status-Text im Frontend ändern (Plentymarkets)

Allgemein, E-Commerce, Plentymarkets, Webdesign

Da Plentymarkets ein geschlossenes System ist, ist es manchmal sehr mühsam, kleine Details, die von Plenty vorgegeben sind, zu ändern.

So etwa mit der Anzeige des Status im Frontend, die man zwar im Backend umbenennen kann, jedoch nicht in Frontend. Hat man zum Beispiel einen Status definiert der in etwa heißt “[5.2] Abwicklung extern bei Dropship-Partner XY” so möchte man eventuell nicht, dass dieses auch dem Kunden in der Statusübersicht angezeigt wird. Dort sollte nur stehen: “in Versandvorbereitung”

Folgendes kleines Skript schafft Abhilfe, indem der Status per javascript im Kundenbereich des Plentymarkets-Shop geändert wird.

  • Im Script müssen nur die Texte angepasst werden.
  • Dann muss es eingesetzt werden in: Webdesign –> Mein Konto –> Auftragshistorie –> Bestellübersicht –> Text vor.
  • Dann sollten die Status umbenannt werden. Änderungen können eingesehen werden auf: www.meinePlentyDomain.de/my-account/

Falls ihr Fragen habt oder Hilfe braucht, sagt Bescheid (www.espressolabs.de/kontakt/).

Viel Spaß!

 

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!

Eigene Facebook-App erstellen

Allgemein, Facebook-Apps, Social Media

Die eigene Facebook-App erstellen (Tutorial)

Wenn man von einer Webseite bestimmte Inhalte mithilfe des Fabook-Share-Buttons teilen und dabei den Kommentar voreinstellen möchte, kommt man nicht darum herum, eine eigene Facebook-App zu erstellen. Insbesondere wird die Facebook-App-Id benötigt, um sie im Code des Share-Buttons zu integrieren.

Folgend eine kleine Anleitung, wie man schnell zur eigenen Facebook-App kommt:

1.) Gehe auf die Facebook-Developer-Seite: https://developers.facebook.com/

2.) Klicke oben im Menu auf Apps –> “Create New App” (siehe folgender Screenshot)

2014-08-04_11-21-52

3.) Im folgenden Dialogfeld müssen verschiedene Einstellungen vorgenommen werden (siehe Screenshot unten):
Display-Name: Falls es um ein Gewinnspiel geht, könnte man hier beispielsweise einsetzen: “Unser Facebook-Gewinnspiel zum Sommer”
Namespace: Dies ist ein einzigartiger Name, der nur ein einziges Mal vergeben wird. Z.B. meine-website-aaa (Zahlen sind nicht erlaubt)
Kategorie: Hier eine möglichst passende Kategorie auswählen. Passend wäre in diesem Fall: “Apps für Seiten”

2014-08-04_10-54-57

4.) Wenn man das Diaglogfeld mit “Anwendung erstellen” schließt, gelangt man sofort auf das “Dashboard”.
Hier kann man schon direkt sehen, mit welcher die App-ID die Facebook-App erstellt wurde. (siehe Screenshot). Auch kann man später auf dem Dashboard einige Statistiken über die eigene App einsehen.
Dies reicht aber noch nicht für die “Share-Funktion”, die man auf Webseiten einbindet und die dann beispielsweise auf eine bestimmte URL weiterleitet. Diese URL muss noch in der Facebook-App angegeben werden.

2014-08-04_11-33-06

5.) Eingabe der URL für die “Share-Funktion”
Hierfür klickt man in der linken Menuleiste auf “Settings”, und muss dann folgendes eingeben:
Display-Name und Namespace sollte schon vergeben sein (Hier hat man die Möglichkeit, diese Eingaben zu ändern)
App-Domains: die eigene Domain, zu der die Facebook-App gehört (in unserem Beispiel www.espressolabs.de)
– Klicke auf “App Plattforms” um (im einfachsten Fall) eine Webseite hinzuzufügen. Wähle hierfür “Website
– Gib die URL der Website ein, die “ge-shared” werden soll. Falls die mobile Seite eine andere URL hat, kann sie auch angegeben werden.

2014-08-04_11-49-34

Sobald Du mit “Änderungen speichern” alles gesichert hast, lässt sich der Share-Button auch mit individuellen Kommentaren und Bildern verwendenden. Diese kann man sogar per javascript definieren, d.h. für eine Seite, die geteilt wird, können unterschiedliche voreingestellte Kommentare und Bilder verwendet werden.

6.) Die Facebook-App für alle User zugänglich machen
Bis hierhin ist deine Facebook-App noch im “Entwickler-Modus” bzw. Development-Mode. Über den Einstellungspunkt Status & Review (links im Menu) kannst Du die App für weitere Benutzer freischalten oder auch als öffentlich markieren. Dies ist natürlich unerlässlich, wenn Du deine Webseite einem breitem Publikum zugänglich machen möchtest.

Ende und damit: Viel Spaß bei der Erstellung der eigenen Facebook-App!

 

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.