Close

Kontaktieren Sie uns

Brauchen Sie IT-Service oder Support? Schicken Sie uns Ihre Online-Anfrage, und wir finden eine Lösung!

Your request was succesfully accepted!

Wie Sie Ihre Magento-Website beschleunigen

Wie Sie wahrscheinlich wissen, funktioniert Magento-Framework langsam. Sehr langsam, manchmal. Dieser Beitrag ist eine Zusammenstellung von zwei Artikeln über die Beschleunigung Ihres Magento E-Commerce-Geschäfts, vom ersten bis zum letzten Byte.

 

Wenn es darum geht, Ihre Magento-Seite schneller zu machen, müssen Sie zwei Parameter berücksichtigen: Zeit zum ersten Byte (TTFB) und Browser-Ladezeit. Bevor Sie Ihr Frontend optimieren können, müssen Sie zunächst Ihre TTFB reduzieren. Mal sehen, wie es gemacht wird.


TTFB-Optimierung

Zuerst müssen Sie verstehen, was „in“ Magento vor sich geht. Dafür verwenden wir ein intelligentes integriertes Tool namens Magento Profiler. Es zeigt uns eine Liste der internen Magento-Aufrufe und deren Ausführungszeiten.

Außerdem können Sie den Aufruf von Profiler in Ihren Code integrieren, um die Leistung zu messen und die Engpässe zu erkennen.

Wie man Magento Profiler aktiviert

Wählen Sie System > Configuration > Advanced > Developer > Debug > Profiler im Magento-Administrationsbereich. Schalten Sie Profiler auf „Ja“ um.

In index.php Datei aktivieren Sie diese Zeile:

Varien_Profiler::enable();

Stellen Sie sicher, dass Sie Magento cash geleert haben, um Zugang zu Profiler zu erhalten.

Wie Sie Profiler in Ihren Code einsetzen

Fügen Sie Varien_Profiler::start(‚any_name) undVarien_Profiler::stop(‚any_name) Zeilen zum Block des langsamen Codes hinzu.

Varien_Profiler::start(‚any_name_here‘);

…. Block von Magento-Code, der langsam läuft…….;

Varien_Profiler::end(‚any_name_here‘);

Parameter von Profiler

Code Profiler ist eine Kennung, die Sie in Varien_Profiler::start und Varien_Profiler::stop Aufrufe verwendet haben.

Time ist die Codeausführungszeit (in Sekunden) zwischen Varien_Profiler::start und Varien_Profiler::stop.

Cnt ist die Anzahl der Starts des Codeblocks während des Seitenaufrufs.

Emalloc ist die Speichergröße, die für PHP während der Laufzeit des Codeblocks über emalloc Systemaufruf zugewiesen wird.

RealMemis ist die Größe des physischen Speichers, der für PHP während der Laufzeit des Codeblocks zugewiesen wird.


Schalten Sie unnötige Module aus

Gehen Sie auf Ihre Website und schauen Sie sich dann den Profiler an. Finden Sie zuerst die Zeilen mit dem Wort OBSERVER. Dies sind Observer-Module, die bei jedem Zugriff auf die Seite gestartet werden. Sie können einige davon ausschalten. Wenn Sie beispielsweise keine Bewertungen oder Einstellungen für Verkaufsregeln verwenden, können Sie die Module Mage_Review und Mage_SalesRule deaktivieren.

Hier ist eine Liste von Magento-Erweiterungen, die Sie möglicherweise nicht benötigen:

  • Mage_Reviews
  • Mage_SalesRule
  • Mage_Wishlist
  • Mage_Bundle
  • Mage_Downloadable
  • Mage_Paypal
  • Mage_Log

Außerdem kann Ihr Magento zusätzliche Erweiterungen haben, die Sie nicht benötigen. Diese Erweiterungen starten ihre Frontend-Observers jedes Mal, wenn die Seite geladen wird,  was natürlich Ihre Website verlangsamt.

Optimierung vom Code in .phtml-Dateien

Hier ist, wie Sie den PHP-Code in Ihren Themendateien verbessern können:

<?php $_collection = $this->getLoadedProductCollection(); ?>

<?php <strong>foreach</strong>($_collection <strong>as</strong> $_product):?>

<?php $_product = Mage::getModel(‚catalog/product‘)->load($_product->getId()) ?>

<?php echo $_product->getSku() ?>

<?php <strong>endforeach</strong>; ?>

Sie müssen nicht in jedem Zyklus ein Modell aus dem Katalog/Produkt hochladen, da das Modell bereits durch die Variable $_product definiert ist. Wenn Sie eine ziemlich große Auswahl an Produkten verkaufen, kann es sein, dass Sie am Ende viele unnötige Zugriffe haben.

Dies ist nur ein Beispiel dafür, wie chaotisch Ihr PHP-Code sein kann.

Um die Erstes-Byte-Zeit zu reduzieren und Ihre Website zu beschleunigen, müssen Sie den Code in allen.phtml-Dateien überprüfen. Achten Sie besonders auf die Zyklusstrukturen.


Aktualisieren Sie Ihr Magento

Das Magentoteam arbeitet hart daran, sein Produkt zu verbessern. Wenn Sie eine ältere Version von Magento haben, stellen Sie sicher, dass Sie diese auf die neueste Version aktualisieren. Die neuen Versionen bieten verbesserten Code in vielen Kerndateien, was die interne Logik von Magento verbessert.


Frontend-Optimierung

Nun lassen Sie uns sehen, wie Sie die Browser-Ladezeit beschleunigen können.

  1. Kategorie-Seite

Laut Google Page Speed liegt die Geschwindigkeitsleistung der Seite bei 68/100.

Zuerst müssen wir die JS-Ausführung stoppen. Dies bedeutet, dass Javascript und CSS aus dem ATF-Inhalt (above-the-fold) entfernt werden.


Wie man JS/CSS entfernt

Wählen Sie den internen Javascript-Code aus und setzen Sie ihn in die gleiche Funktion ein. Nachdem die Seite geladen wurde, müssen Sie auf diese Funktion und den externen JS-Code des Prozesses zugreifen.

 

Reduzieren Sie JS/CSS

Das Komprimieren und Reduzieren von JS/CSS-Dateien kann mit verschiedenen Magento-Erweiterungen erfolgen.

 

Setzen Sie CSS-Priorität für ATF-Inhalte  

Das bedeutet, dass die Seite zu viel Inhalt im ATF-Bereich hat. Wir müssen den CSS-Teil auswählen, der für Hochladen dieses Inhalts benutzt wird,  und ihn in die Datei aufnehmen. Der Rest von CSS wird asynchron geladen.

Das ist, was wir haben:

Wie Sie sehen können, wird der Filter-Tab standardmäßig angezeigt. Das bedeutet, dass alle filterbezogenen HTML-Inhalte geladen werden.

 

Um den Filter-Tab standardmäßig unsichtbar zu machen, müssen Sie display:nonezum entsprechenden CSS-Antrag @ media hinzufügen.

Jetzt hat unsere Seite 100/100 Punkte!

 

  1. Andere Seiten

 

Jetzt, da wir TTFB reduziert und JS und CSS angehalten haben, bleibt uns nur noch, den ATF-Inhalt auf den verbleibenden Seiten zu optimieren.

Hier sind die Ergebnisse, die wir für eine Produktkartenseite, eine Einkaufskartenseite und eine Standardwebseite erzielt haben:

 ePageSpeed-Score für eine Standardseite einer Website 

 Google PageSpeed Bewertung für eine Produktkartenseite

 Google PageSpeed für eine Einkaufskartenseite

 

Wie Sie sehen können, haben wir es geschafft, für fast jede Webseite eine 100/100 Punktzahl zu erreichen.

Obwohl die Beschleunigung Ihrer Website  eine herausfordernde und mühsame Aufgabe sein kann, werden die Ergebnisse  Sie sicher begeistern.  Ihre Webseiten werden viel schneller, auch ohne Cache, geladen. Cache ! = Leistung. Starten Sie mit der Optimierung von TTFB auf Ihrer Magento-Website und arbeiten Sie dann an der Frontend-Ladezeit.