Allgemein

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?

Magento-Extensions – Das sollte man wissen.

Allgemein

Das Shop-System von Magento ist reich an Erweiterungen (sog. Extensions, auch Module genannt).
Einige Module, die ich aus Erfahrung jedem Magento-Shop-Betreiber empfehlen würde, sind beispielsweise:

Natürlich gibt es noch viele weitere nützliche Erweiterungen. Auch wir haben eine Magento-Schnittstelle zu einem anderen Shop-System programmiert und haben dabei auf die Struktur der Magento-Erweiterungen zurückgegriffen. Im folgenden möchte ich kurz für jedermann verständlich erklären, wie Magento-Erweiterungen funktionieren und worauf man beim Installieren von Extensions beachten sollte.

Wie funktionieren Magento-Extensions aus technischer Sicht?

Eine Magento-Erweiterung enthält im Normalfall Dateien (php, xml, und phtml-Dateien), die in das Root-Verzeichnis des Magento-Shops kopiert werden. Diese Dateien sind an die Ordner-Struktur von Magento angepasst, d.h. sie sind beispielsweise in den Ordnern „app/code/…“ oder „app/design/ …“ zu finden.

Bei der Installation einer Erweiterung werden diese neuen Dateien hochgeladen und in die Ordner-Struktur von Magento integriert. Dabei werden keine Dateien von Magento selbst ersetzt, sondern lediglich neue hinzugefügt. Das Magento-System ist aber so intelligent, diese neuen Dateien zu erkennen und der Magento-Erweiterung zuzuordnen.

Was nun? Magento interpretiert die hochgeladenen Dateien als zur neuen Erweiterung zugehörig. Auf Seiten des Codes passiert folgendes: Verschiedene Klassen und Script-Funktionen werden nun nicht mehr aus dem sog. „Core-Code“ von Magento aufgerufen sondern aus dem neuem Modul. Oder: Verschiedene Programmcodes werden um Funktionen aus dem neuem Modul erweitert.

Ein Beispiel:

Zwar habe ich nicht die DHL-Intraship-Erweiterung programmiert, dennoch kann man dies als anschauliches Beispiel heranziehen:

  • Wenn ich in einem Magento-Shop ohne die DHL-Intraship-Extension in einer Bestellung auf „Senden“ klicke, so erscheint die normale Maske für das Anlegen eines Lieferscheins. Hinter dem Klick auf Senden steckt gewissermaßen eine Klasse und eine Anweisung, die diese normale Maske zur Lieferschein-Erstellung erscheinen lässt.
  • Wenn ich aber die DHL-Intraship-Extension installiert habe, so erscheint in der Maske ein zusätzliches Feld, in dem ich Eingaben für das Erstellen des DHL-Versandlabels vornehmen kann.

Was passiert hier? Magento ersetzt aufgrund des installierten (hochgeladenen Moduls) die normale Anweisung (Lieferschein erstellen) durch die neue abgeänderte Anweisung (Lieferschein mit DHL-Versandlabel erstellen).

Wieso ist das wichtig?

Durch fehlerhaft installierte Magento-Extensions kann man den eigenen Online-Shop kaputt machen. Dies sollte im Normalfall nicht passieren und oft lassen sich Probleme auch im Nachhinein noch beseitigen, dennoch sollte man bei der Installation auf einige Dinge Acht geben und hierfür ist es nicht schlecht, Bescheid zu wissen, wie eine Magento-Erweiterung aufgebaut ist.

Insbesondere ist es wichtig, vor der Installation einer neuen Erweiterung den Compiler zu deaktivieren. Denn durch den Kompilierungsprozess werden verschiedene Script-Funktionen und Anweisungen (wie oben im Beispiel) zur Performance-Verbesserung durchlaufen, noch bevor ein User diese Anweisungen ausführt. Passiert die Kompilierung nun vor der Installation eines neuen Moduls, so kommt Magento gewissermaßen mit alten (im Kompilierer gespeicherten) und neuen aus dem Modul stammenden Script-Anweisungen durcheinander. Resultat ist eine Fehlermeldung. Das Frontend und Backend des Shops ist nicht erreichbar, was sehr ärgerlich sein kann.

Lesen Sie in meinem nächsten Post, welche Schritte Sie für eine sichere Installation von Magento-Erweiterungen durchführen sollten.

Eine Magento-Erweiterung wurde installiert und der Shop bzw. das Backend ist nicht mehr erreichbar?

Sollte dieser Fall eingetreten sein, ist das Grundgebot: keine Panik und vorschnelle Schlüsse, wie beispielsweise das Zurücksetzen des gesamten Systems auf einen älteren Zustand! Sie können das Modul auf einfache Weise wieder deinstallieren. Lesen Sie in diesem Artikel, was Sie zu tun haben, sollte Ihr Magento-Backend bzw. -Frontend aufgrund einer installierten Erweiterung nicht mehr erreichbar sein.

Sie haben weitere Fragen?

Sie haben weitere Fragen zu nützlichen Magento-Erweiterungen, benötigen Hilfe bei der Installation dergleichen oder suchen professionelle Hilfe für Ihren Magento-Shop? Kontaktieren Sie uns.

PlentyMage – Die Schnittstelle für Plentymarkets und Magento

Allgemein

Auf vielerlei Anfragen hin haben wir uns entschieden, unsere Plentymarkets-Magento-Schnittstelle als vollwertiges Produkt an den Markt zu bringen. Nun ist es fertig! Für diejenigen geeignet, die aus Ihrem Magento-Shop ein professionelles E-Commerce-Unternehmen machen möchten.

Plentymarkets ist eine E-Commerce-Komplettlösung der Kasseler Softwarefirma Plenty Systems. Neben einem hohen Funktionsumfang punktet das System durch benutzerfreundliche Bedienung, gutem Service und einer ständigen Verbesserung. Zudem ist die Online-Software per se  an zahlreiche Verkaufsplattformen angeschlossen. Dem Verkauf über diverse Kanäle sind somit fast keine Grenzen gesetzt. Zur Homepage von Plentymarkets.

Magento ist die Open-Source-Alternative für kleine bis mittelgroße Online-Shops. Magento besticht vor allem durch die vielen professionellen Features, zudem ist es durch die modulare Software-Architektur fast unbegrenzt erweiterbar.

PlentyMage ist unsere Lösung für alle diejenigen, die beide Shop-Systeme unter einen Hut bringen möchten. Sei es, durch den Umstieg von Magento nach Plentymarkets, den Zukauf eines Magento-Shops, oder das Öffnen eines neuen Verkaufskanals. Mit PlentyMage werden Warenbestand, Bestellungen, Kunden- oder Artikeldaten automatisch abgeglichen.

Plenty-Mage-Software-Box

Snagit – Ein Must-Have-Tool für alle Digital-Natives!

Allgemein, Tools

Für jeden Webgrafiker, -entwickler und -unternehmer, aber auch für jeden anderen, der sich im Web bewegt und Screenshots macht, das absolute Muss!!!

Mit Snagit kannst du spielend einfach Schnappschüsse von einem Windows-Fenster oder vom gesamten Bildschirm machen, so wie man sich es immer gewünscht hatte. Alle anderen Formen des Schnappschuss-Machens auf Windows haben sich bei mir nämlich als viel zu umständlich erwiesen: Erst die Druck-Taste, dann das Bild in Photoshop oder einem anderen Bildprogramm einsetzen, beschneiden, kleine Notizen hinzufügen. Alles obsolet, seitdem ich Snagit nutze. Wer das Tool kennt, der kann meine Begeisterung nachvollziehen. Übrigens ist Snagit auch für den Mac zu haben, ehrlich gesagt finde ich die Windows-Version allerdings intuitiver.

Ursprünglich habe ich Snagit mal bei einem Praktikum in einem großen Unternehmen kennengelernt, hab es aber gleich für die Weiterentwicklung des Webshops von Sox & Boxers übernommen. Seitdem machen wir liebend gern und immer wieder kleine Snagits, um Stellen auf der Homepage zu markieren, die geändert werden sollen („Diesen Button könnten wir doch noch ein Stücken weiter nach links rücken“) oder um einfach zu sagen „Die Wäscheleine-Vögelchen, die Martin uns da gemalt hat, find ich ja total super“. Das Screenshot-Problem ist also gelöst!

snagit10_de_allinone

Die knapp 50 Euro, die man im Online-Store ausgibt, sind in jedem Fall gut angelegt. Wer ein wenig sparen möchte, kann sich sicherlich auch gebrauchte Lizenzen beschaffen. Das ist übrigens ein allgemeiner Tipp für Selbstständige und Startups: Mit gebrauchten Software-Lizenzen kann man bare Münze sparen und brauch nicht das Risiko einzugehen, mit illegal herunter geladener Software zu arbeiten.

Also, Startupper und Web-Fanatiker: Holt euch Snagit. Das macht das Leben glücklicher!

Hier geht’s direkt zum Download des Screen-Shot-Tools Snagit