Lazy Loading in WordPress: äußerst nützlich, manchmal problematisch

Symbolbild: Abgebrochen, gestoppt

Seit der Version 5.5 gehört Lazy Loading zum Lieferumfang von WordPress. Diese Funktion habe ich bereits vor einiger Zeit ausführlich vorgestellt. Bei Lazy Loading – wörtliche Übersetzung: faules Laden – werden die Bilder und andere Elemente auf einer Website erst dann geladen, wenn sie in den sichtbaren Bereich des Bildschirmes rücken.

An sich ist das verzögerte Laden eine sinnvolle Funktionalität, da damit vor allem bei Geräten mit kleineren Bildschirmen das unnötige Herunterladen von Komponenten verhindert wird. Allerdings verursacht genau dieses Ladeverhalten in bestimmten Szenarien Probleme.

Das kann zum Beispiel einer Übergangsseite oder ein One-Pager sein, der aus mehreren Bildern besteht. Hier wäre es sinnvoll, dass alle Grafiken gleichzeitig laden, weil es sonst komisch ausschaut. Ein anderes viel häufigeres Problem ist allerdings der Einsatz von VG-Wort-Zählpixeln.

Was ist VG Wort…?

So in etwa, was die GEMA bei den Musikern ist, ist die VG Wort (Verwertungsgesellschaft Wort) bei den Autoren der schreibenden Zunft. Sie wurde in den 1950er-Jahren, auf Betreiben des Verbandes deutscher Schriftsteller, als Zusammenschluss von Autoren und Verlagen zur gemeinsamen Verwertung von Urheberrechten gegründet. Sie ist ein eingetragener und nicht profitorientiert arbeitender Verein und steht unter der Aufsicht des Deutschen Patent- und Markenamtes.

Was für die allermeisten Autoren wichtig ist: Die VG Wort achtet, dass die Urheber ihre Tantiemen auch für Zweitverwertungen erhalten. Je nach Werk wird das unterschiedlich behandelt. Bei den Büchern richten sich die Tantiemen unter anderem anhand der Verbreitung des Werkes in den Bibliotheken.

Bei Texten im Web ist es anders. Hier müssen die Autoren bzw. die Urheber 1 x 1 Pixel große Grafiken einbauen. Alle Texte die mindestens 1.800 Zeichen überschreiten, können von den Wahrnehmungsberechtigten eingereicht werden. Hat ein Werk mehr als 1.500 Aufrufe, dann bekommst du für diesen Tantieme ausgeschüttet. Weitere Informationen findest du auf der Website der VG Wort.

… und was hat das jetzt mit Lazy Loading zu tun?

Im Grunde genommen ist es eine prima Sache. So kommen die Autoren zu einer kleinen Zusatzeinnahme und für die sind viele Urheber dankbar, da die Einnahmen in der schreibenden Zunft für die Masse von Autoren alles andere als üppig sind. Der Brutto-Stundenlohn (median) für die freien Journalisten liegt wohl bei 22,50 Euro.

Und jetzt kommen wir zu dem Problem. Das Zählpixel wurde von vielen Bloggern am Ende des Artikels eingefügt. Entweder automatisch durch Skripte und Plugins oder manuell. Und warum am Ende?

Der Zählpixel sollte sich nur dort befinden und auch nur dort aufrufbar sein, wo sich der komplette Artikel befindet. Baust du das Zählpixel am Anfang ein, dann kann es dir je nach Theme passieren, dass das Zählpixel auch auf Archiv-Seiten auftaucht und dort geladen wird. Das ist aber nicht erlaubt, da so Aufrufe von Zählpixel passieren, obwohl der eigentliche Beitrag nicht angefordert wurde.

Aber du ahnst schon, wo die Problematik entsteht, wenn der Zählpixel ganz am Ende abgelegt wird. Es kann passieren, dass jemand 4/5 oder 9/10 deines Artikels liest, aber der Pixel nicht geladen und somit auch nicht gezählt wird, weil das automatisch eingefügte lazy="load" erst dann das Bild zum Laden freigegeben wird, wenn es in den Viewport ankommt.

Und wie behebt man nun das Problem?

Klar, wir könnten jetzt den Vorschlaghammer schwingen und Folgendes in die functions.php einfügen:

add_filter( 'wp_lazy_loading_enabled', '__return_false' );

Damit deaktivierst du allerdings komplett das Lazy Loading. Das Ganze gibt es auch als fertiges Plugin. Dies dürfte denke ich mal in mindestens 99 % der Fälle nicht erwünscht sein. Zu stark sind die Vorteile der verzögerten Lademethode. Was aber stattdessen machen?

Weitere Alternativen brachten entweder nur kurzfristig Erfolg oder bewegten gar nichts. Du kannst nämlich manuell loading="eager" einfügen, um das Laden des Elements zu erzwingen, aber WordPress überschreibt dies mit loading="lazy". Weitere Angaben von Attributen und Klassen-Werten wie zum Beispiel data-skip-lazy="" oder class="skip-lazy" bringen nur etwas in Zusammenspiel mit bestimmten Plugins.

Die einfachste und zuverlässigste Methode ist es wohl, zumindest im Fall des Zählpixels von VG Wort, die Grafik am Anfang im ersten Absatz unterzubringen. Dann musst du keine extra Plugins installieren oder auf die Wirkung von irgendwelchen Attributen hoffen.

Das Einzige worauf du allerdings achten solltest ist, dass dein Theme die Beiträge in den verschiedenen Archiven so darstellt, dass von dem Inhalt nur Auszug (engl. Excerpt) angezeigt wird. Damit verhinderst du, dass du gegen die Richtlinien von VG Wort verstößt.

Nachtrag: Es sieht wohl so aus, dass meine Aussage in Bezug auf loading="eager" nicht ganz stimmt. Tatsächlich überschreibt WordPress es wohl nicht (immer). Somit wäre das Einfügen dieses Attributs ein möglicher Weg.

Image(s) licensed by Ingram Image/adpic.

Wir arbeiten seit 20 Jahren mit WordPress und bieten diverse Dienst­leistungen rund um das System an. Kontaktiere uns für weitere Informationen oder für ein Angebot.

Verwandte Beiträge: