Block Editor Gallery-Block mit Lightbox ausstatten (WordPress/Gutenberg)

Mir gefällt der standardmäßig mitgelieferte Gallery-Block von Gutenberg sehr gut. So gut, dass ich eigentlich keinen Grund sehe, auf ein extra Gallery-Plugin zu setzte. Leider gibt es ein großes Manko: Standardmäßig wird keine Lightbox mitgeliefert. Die vielen schönen Bilder wollen die Besucher natürlich gerne im Vollbild anschauen und das ist sonst nur mit viel vor und zurück klicken möglich.

Update

Das Plugin steht jetzt in der WordPress.org Plugin Repository zum Download bereit:

Umsetzung

Zum Glück kann man eine Lightbox aber relativ einfach mit etwas JavaScript nachrüsten. Ich habe mich für BaguetteBox.js (Danke an René Hesse für den Tipp) entschieden. Keine Abhängigkeit von jQuery und nur 3,2kb gezipped groß!

Damit BaguettBox.js die Bilder in der Gallery in der Lightbox darstellt kann, reicht eine Zeile zusätzliches JavaScript aus:

baguetteBox.run('.wp-block-gallery');

Zusätzlich kann man auch noch die Bildbeschreibung abgreifen und in der Lightbox anzeigen lassen:

var options = { captions: function (element) { var figcaption = element.parentElement.getElementsByTagName('figcaption')[0]; if (figcaption) { return figcaption.textContent; } return false; }, }; baguetteBox.run('.wp-block-gallery', options);

Wenn das Script async oder defer gelandet wird, z.B. weil ihr ein Plugin zur Performanceoptimierung wie WP Rocket nutzt, muss gewartet werden, bis alle Ressourcen inkl. BaguettBox.js vollständig geladen sind. Wartet einfach bis das load Event ausgelöst wird:

window.addEventListener('load', function() { var options = { captions: function (element) { var figcaption = element.parentElement.getElementsByTagName('figcaption')[0]; if (figcaption) { return figcaption.textContent; } return false; }, }; baguetteBox.run('.wp-block-gallery', options); });

Plugin downloaden

Ich habe das ganze in einem kleinen Plugin realisiert. Es registriert die zwei JavaScript- & CSS-Datein ein, lädt sie aber nur, wenn im Content der aktuellen Seite auch eine Guteberg Gallery gefunden worden ist.

Ihr könnt das Plugin in der offiziellen Plugin WordPress.org Plugin Repository herunterladen und in eurer WordPress-Installation hochladen & aktivieren:

Achtung

Es ist nur möglich die Lightbox anzuzeigen, wenn in Gutenberg bei der Gallery Link zur Medien-Datei ausgewählt ist. Sonst findet BaguetteBox.js keinen Link zur Bilddatei, die es in der Lightbox anzeigen lassen soll.

Gutenberg Gallery Link Medien Datei
Link zur Medien-Datei bei der Guteberg Gallery auswählen

In Aktion

Hier das Plugin in Aktion mit Bildern von meiner Reise nach Bali:

8 Kommentare zu “Block Editor Gallery-Block mit Lightbox ausstatten (WordPress/Gutenberg)

  1. Super Tipp. Habe heute erstmals den Gallery-Block von Gutenberg verwendet und war verwundert, dass es da keine Lightbox-Funktionalität gibt. Mit dem von dir empfohlenen Script und der Anpassung für die großen Bilder war das jetzt allerdings in 5min nachrüsterbar. Danke! 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.