Performance: Javascript und CSS verursacht eine Verzögerung beim Rendern der Seite

Hallo,

 

Ich konnte meine Seite bei PageSpeed Insight in grün Bereich bringen. Hast jemand auch gleich Problem wie ich und Lösung dazu gefunden?

 

Mögliche Optimierungen

JavaScript- und CSS-Ressourcen, die das Rendering blockieren, in Inhalten “above the fold” (ohne Scrollen sichtbar) beseitigen

Ihre Seite enthält 2 blockierende Skript-Ressourcen und 1 blockierende CSS-Ressourcen. Dies verursacht eine Verzögerung beim Rendern Ihrer Seite.

Keine der Seiteninhalte “above the fold” (ohne Scrollen sichtbar) konnten ohne Wartezeiten für das Laden der folgenden Ressourcen gerendert werden. Versuchen Sie, blockierende Ressourcen zu verschieben oder asynchron zu laden, oder laden Sie kritische Bereiche dieser Ressourcen direkt inline im HTML.

Entfernen Sie JavaScript, das das Rendering blockiert:

Optimieren Sie die CSS-Darstellung für die folgenden URLs:

Ich glaube das wurde mit der 5.3 version gefixt?

Ist in der Tat ein grosses problem welches anständiges seo bezüglich der ladezeit und zu ladender datenmenge fast unmöglich macht.

 

Hallo,

grundsätzlich sollte man diese “above the fold” Warnung nicht all zu kritisch betrachten. Dennoch haben wir in der 5.3 einige Verbesserungen bzgl. des Renderings der Seite vorgenommen, wodurch auch die PageSpeed Bewertung (im Standard) deutlich verbessert wurde. Einer der wichtigsten Punkte ist hier aber auch die Optimierung der Bilder gewesen.

Weitere Infos auch hier:
Google PageSpeed Best Practise

… und hier:
Using CSS and JavaScript in themes

Sonnige Grüße,
Phil  

Hallo,

in der “above fold” Meldung geht es nicht um die Bilderkomprimierung sondern um CSS.
Hier müsste Shopware im Standardumfang nachbessern. Es gibt dafür bereits Ansätze und Rezepte:
CSS-Trick: CSS asynchron laden | Heiko Mamerow

Das Script loadCSS müsste z.B. in Shopware von Haus aus integriert sein oder eine alterrnative eigene Lösung:
GitHub - filamentgroup/loadCSS: Load CSS asynchronously

Das asynchrone Laden von Javascript ist bereits in Shopware umgesetzt - fehlt noch das asynchrone Laden von CSS.

Best, Konrad

@Konrad‍: So einfach ist es aber leider auch nicht. Wie in dem von dir verlinkten Beitrag gezeigt, gibt es „kritisches“ und „unkritisches“ CSS. Das zu trennen ist jedoch nicht so einfach. Vor allem wenn man hier ein solides System auch für Plugins zur Verfügungen stellen möchte.

Wenn man das jetzt mit Kosten/Nutzen vergleicht, würde ich diesem Feature eher eine sehr niedrige Prio geben.

Wir sprechen hier von wenigen KB, welchen nach dem ersten Aufruf gecached werden. Pagespeed ist m.M.n. nicht alles. Der aktuelle Score von Shopware ist nicht schlecht und es gibt andere Bereiche die weit wichtiger sind.

Du kannst jedoch gerne ein Ticket im IssueTracker aufmachen. Wenn genug Nutzer dafür Voten, wird es umgesetzt.

Viele Grüße

Hi Simkli,

vielen Dank für Deine Hinweise.

Ich vermute, dass der Aufbau der CSS/LESS Struktur grundsätzlich unter dem Aspekt krytisch und unkrytisch
konzipiert werden müsste, an den sich dann auch die Plugins halten müssten. Google bietet zwar einen Filter
“prioritize_critical_css” an, der aber mit dem Risiko verbunden ist, dass Shopseiten unkontrolliert mit
Inline-CSS in Übermass befüllt werden und keine Besserung bringen.

Jeder, der sich mit der PageSpeed beschäftigt, kommt leider immer an den Punkt mit dem asynchronen Laden von CSS.
Kritisch wird es meistens dann, wenn der Shop sehr individuell gestaltet ist und viel CSS beinhaltet. Das betrifft z.B. auch
die Entwicklung von optisch anspruchsvollen Themes.

Best, Konrad