Warum es für Lazy Load in WordPress 5.5 noch etwas zu früh ist und was ihr stattdessen nutzen solltet

lazy load

WordPress 5.5 hat natives Lazy Loading in den Core von WordPress integriert und das ist sehr zeitgemäß, schließlich ist das Feature selbst noch recht frisch. Nutzen sollten es dennoch nur wenige. Finde ich jedenfalls und möchte euch in diesem Beitrag erklären, warum ich das so sehe und was ich euch stattdessen empfehle.

Lazy Load meint dabei im Kern ein verzögertes Laden von Inhalten. Besitzt eine Website viele Bilder, werden diese beim Seitenaufruf alle beim jeweiligen Server angefragt und anschließend geladen. Je nach Bildgröße etc. kann das viele Sekunden Ladezeit kosten. Lazy Load prüft deshalb sehr genau, ob Bilder sich im sofort sichtbaren Bereich des Nutzers befinden und lädt nur diejenigen, die derzeit sichtbar sind. Alle anderen Bilder werden nachgeladen, sobald der jeweilige Nutzer nach unten scrollt, die Bilder also in den Sichtbereich rutschen.

Neu ist Lazy Load dabei nicht, wohl aber die Implementierung von WordPress. WordPress setzt dabei nämlich auf natives Lazy Loading und das schauen wir uns zunächst einmal genauer an, bevor wir klären, warum das für viele gar nicht so gut ist und was sie stattdessen nutzen sollten.

Was ist natives Lazy Loading im Browser?

Wie schon erwähnt, ist Lazy Loading im Kern nichts Neues. Es gab schon immer Plugins, die ein wenig Javascript integrierten, welches wiederum dafür sorgte, dass Bilder effektiv nachgeladen wurden. Mal waren solche Scripte und Plugins extrem minimal aufgebaut, mal kannten sie unzählige Ausnahmen und reagierten sehr genau auf Scrolltiefen und vieles mehr. Alles soweit bekannt, keine Sensation also.

Doch irgendwann stellte sich die Frage, ob wirklich jede Website das für sich selbst lösen sollte. Zum einen funktionierte nicht jedes Script gleich gut in den unterschiedlichen Browsern, zum anderen waren aber eben oft auch Plugins notwendig und Anfänger waren schlichtweg überfordert mit der Implementierung einer solchen Technik. All dieser Aufwand, nur um die Ladezeit zu optimieren. Dabei ist die Ladezeit doch eher etwas, was den Browser betrifft.

Stimmt! Also bekam der Chrome Browser als erste Anwendung natives Lazy Load spendiert. Das Lazy Load Script wurde quasi in den Browser integriert, was den Vorteil hatte, dass es bei allen Websites und Blogs gleich funktionierte. Was die Blink Engine in Chrome verwirklichte, kommt nun für alle Browser, wie die Übersicht bei Can i use bereits zeigt.

Wie kann ich natives Lazy Load verwenden?

Das ist ganz einfach. In WordPress 5.5 wird das Attribut automatisch zu den Bildern hinzugefügt. Im Klartext ist damit das Loading-Attribut gemeint, welches folgendermaßen aussieht und zum Img-Tag hinzugefügt wird. Sehr simpel, logisch und einfach.

loading="lazy"

Genau wie der Alt-Tag, fügt WordPress also einfach das Attribut von oben hinzu und gibt dem Browser somit die Anweisung, das Bild erst dann in den Speicher zu laden, wenn es auch tatsächlich benötigt wird. Das funktioniert in den gängigen Browsern schon ganz gut und wird in Zukunft auch in Safari implementiert. Aktuell klappt das alles aber nur in den neueren Browsern, per se also nicht bei allen Nutzern.

Wer Lazy Load deshalb nicht verwenden möchte oder eine eigene Lösung bzw. ein Plugin dafür einsetzt, muss ab WordPress 5.5 ein Snippet in die functions.php hinzufügen, welches Lazy Load deaktiviert und somit dafür sorgt, dass genau dieses Attribut eben nicht automatisch gesetzt wird. Das findet sich, wie viele weitere Hinweise, bei WordPress selbst und sieht so aus. Alternativ einfach dieses Plugin verwenden.

add_filter('wp_lazy_loading_enabled', '__return_false');

Ist natives Lazy Load jetzt sinnvoll oder nicht?

Da sind wir nun genau an dem Punkt gelandet, wo ich sagen muss, dass ich mir diese Frage aktuell selbst immer wieder stelle. Prinzipiell ist natives Lazy Load ein Segen. In Zukunft braucht nicht mehr jeder sein eigenes Script schreiben, es gibt eine einheitliche Lösung, die immer funktioniert, niemand ist also abhängig von Plugins und Updates. Mir ist es früher durchaus schon einmal passiert, dass ein Lazy Load Plugin seinen Dienst einstellte. Bei nativem Lazy Loading wird das nicht passieren, es wird fest in die Browser integriert sein und somit dauerhaft funktionieren.

Aktuell ist es aber so, dass das integrierte, also native Lazy Loading, noch gar nicht so gut arbeitet. Zum einen, was die Scrolltiefe angeht, zum anderen, was den Support betrifft. Wer nicht den neusten Browser nutzt, muss also weiterhin alle Bilder auf einmal laden. Wer auf dem iPhone mit Safari surft, lädt ebenso sämtliche Bilder in einem Rutsch herunter, zumindest bis Apple das neue Feature in den Browser integriert hat.

Die Vorteile einer eigenen Lösung liegen da auf der Hand. Ich kann selbst entscheiden, ab welcher Scrolltiefe die Bilder geladen werden sollen. Ich entscheide selbst, wo und wie Lazy Load funktioniert – im besten Fall also in allen Browsern. Ein eigenes Plugin ist derzeit unabhängiger und sinnvoller, weil das native Lazy Load gerade erst gestartet ist. Wie bei allen Neuheiten im Web sollte also erst einmal abgewartet werden, dass es flächendeckend funktioniert, bevor es auch flächendeckend eingesetzt wird.

Meine Empfehlung für Lazy Load in WordPress

Alleine wegen der Browser-Unterstützung würde ich aktuell noch auf ein Plugin setzen, statt auf die native Lösung der Browser. Es gibt aber noch weitere Punkte, die gegen das native Lazy Loading sprechen. So können Plugins aktuell weit mehr, vor allem was das Nachladen von iFrames, Audio-Inhalten und Hintergrundbildern betrifft. Sie sind viel feiner konfigurierbar und erlauben es auch eigene Lösungen zu entwickeln.

Ein schönes Beispiel (übrigens ein Plugin aus Deutschland) ist der Lazy Loader. Das Plugin ist recht schlank, bietet aber eine breite Unterstützung an, ermöglicht es also, ein wirklich effektives Lazy Loading in den eigenen Blog zu implementieren. Aktuell die wohl bessere Lösung, wenn ich das mal so sagen darf.

Meine Empfehlung ist am Ende also lieber noch etwas abzuwarten, bis sich das native Lazy Load etabliert hat und vor allem feiner abgestimmt wurde. Scrolltiefe und andere Parameter werden beim nativen Lazy Load im Browser zwar nie selbst kontrollierbar sein, doch die Browser-Unterstützung sollte dennoch etwas wachsen und einige Verbesserungen wird es ganz bestimmt auch noch geben.

Fazit zum WordPress Lazy Loading

Wenn ihr mich fragt, war das Team hinter WordPress hier ausnahmsweise mal etwas zu schnell mit dem neuen Feature. Gerade erst ist es mehr oder weniger final in die Browser implementiert worden, da setzt WordPress 5.5. es bereits automatisch ein. Wie immer gibt es keine reguläre Option dafür, nur ein Snippet schaltet es ab. Das ist ärgerlich, vor allem wenn es nicht richtig funktioniert oder Probleme verursacht (Zählpixel laden nicht mehr korrekt).

Zwar bin ich mir sicher, dass Lazy Load in den Browser gehört und nativ sehr gut funktionieren wird, doch bis dahin dauert es noch einige Monate, vielleicht sogar mehr als ein Jahr. Wie immer bei neuen Funktionen müssen sich diese nämlich erst einmal verbreiten, vor allem aber auch verbessern, bevor sie den Einsatz wert sind.

Mein Fazit zum Thema Lazy Load in WordPress ist demnach recht einfach. Persönlich würde ich bei einem Plugin bleiben, bis es ein paar sinnvolle Änderungen gab. Wer individuell nachlädt (iFrames, Hintergrundbilder, Podcasts, Scripte usw.), kann mit dem integrierten Lazy Load am Ende sowieso nur wenig anfangen. Da braucht es dann zu viele Extras, die es im nativen Browser Lazy Load niemals geben wird. Denn eines ist heute schon klar: Lazy Load im Browser soll automatisch und überall gleich funktionieren und das gelingt nur dann, wenn es möglichst simpel bleibt.

In diesem Sinne: Was ist eure Meinung zum Thema Lazy Load in WordPress?
Nutzt ihr die neue Funktion schon oder setzt ihr weiterhin auf ein separates Lazy Load Plugin?

Photo by Photoholgic on Unsplash

Bild eines Logos von Discord

1 Kommentar

  • Habe es erst einmal ausgschaltet, wie empfohlen. Für mich ist das alles noch nicht zeitreif und ich nutze wprocket mit LzayLoad

Hinterlassen Sie Ihren Kommentar

*Affiliatelinks/Werbelinks
Die mit Sternchen (*) gekennzeichneten Links sind sogenannte Affiliate-Links.
Wenn du auf so einen Affiliate-Link klickst und über diesen Link einkaufst, bekomme ich von dem betreffenden Online-Shop oder Anbieter eine Provision.
Für dich verändert sich der Preis nicht.