Slots
Starre Inhalts-Layouts regelbasiert dynamisch anreichern und erweitern
Worum geht es hierbei?
Die Ausgangslage: Kampagnen und Hinweise brauchen Platz
Im Betrieb einer Website entstehen regelmĂ€Ăig Situationen, in denen Inhalte gezielt an einer Stelle erscheinen sollen. Marketing will eine Aktion auf ausgewĂ€hlten Produktseiten bewerben. Vertrieb möchte zu einem Thema einen Hinweis einblenden, aber nur fĂŒr eine bestimmte Sprachregion. Die GeschĂ€ftsfĂŒhrung erwartet ein Banner, das nach einem Stichtag automatisch verschwindet.
Solche Anforderungen sind oft fachlich klar, aber technisch unbequem. Die Stelle im Layout ist fest verdrahtet. Standardlayouts sind bei strukturierten Inhaltstypen wie Produkten oft fest gesetzt und nicht pro Inhalt verÀnderbar, um Wildwuchs vorzubeugen. Der Inhalt sitzt in einem Template oder in einer Komponente, die ohne Entwicklung nicht angepasst werden kann.
Das konkrete Problem: Kleine Anpassungen werden zu Tickets und bleiben als Altlasten liegen
Wenn Layouts und Vorlagen fest codiert sind, landet selbst eine scheinbar kleine Ănderung als Ticket in der Entwicklung. Bis die Anpassung umgesetzt ist, vergeht Zeit. Der richtige Moment der Aktion wird verpasst oder die Ănderung kommt zu spĂ€t.
Nach der Aktion entsteht das zweite Problem: Inhalte bleiben liegen. Irgendwo steckt noch ein Hinweis, der lÀngst abgelaufen ist. Oder jemand entfernt ihn hastig und trifft dabei versehentlich eine Stelle, die eigentlich dauerhaft bleiben sollte.
Genau hier setzt Slots an.
Warum war das nötig?
In vielen Projekten entstehen mit der Zeit Speziallösungen. Jede Kampagne bringt ihren eigenen Banner, jede Region ihren eigenen Hinweis, jede Landingpage ihre eigene Ausnahme. Das ist kurzfristig schnell umsetzbar, langfristig aber teuer und immer unĂŒbersichtlicher, wenn Inhalte den Bezug zu ihrem Layout-Standard verlieren.
Slots setzt stattdessen auf ein wiederverwendbares Muster: Platzhalter werden zentral definiert und an sinnvollen Stellen ausgespielt. Redaktion und Marketing befĂŒllen diese PlĂ€tze selbst und steuern die Ausspielung ĂŒber ein konsistentes Regelprinzip. Das hĂ€lt die Plattform wartbar und macht VerĂ€nderungen planbarer.
Was sind die Vorteile?
- Mehr Tempo im Betrieb: Inhalte können dort eingehÀngt werden, wo sie gebraucht werden. Rein redaktionell, ohne Entwicklungsarbeit.
- Weniger Tickets fĂŒr Standardanpassungen: Redaktion und Marketing setzen Varianten selbst um, solange sie im Rahmen der freigegebenen Regeln bleiben.
- Sauberer nach Kampagnen: Inhalte lassen sich gezielt entfernen oder zeitlich begrenzen, sodass weniger Altlasten entstehen.
- Konsistente Steuerung ĂŒber Bedingungen: Regeln fĂŒr Seite, Sprache, Zeitraum und weitere Kriterien lassen sich nachvollziehbar und verstĂ€ndlich ĂŒbers UI einstellen.
- Design-vertrÀglich: Slot-Inhalte bleiben als eigenstÀndige Ebene pflegbar, auch wenn das Frontend-Theme spÀter erneuert wird.
Beispiele fĂŒr die Anwendung
Saisonale Aktion auf Produktseiten: Setup, Problem, Einsatz, Ergebnis
Ein Shop oder Produktkatalog arbeitet mit wiederkehrenden Aktionen. Eine Kampagne soll auf ausgewÀhlten Produktdetailseiten sichtbar sein. Die Aktion hat ein klares Start- und Enddatum.
Ohne Slots wird dafĂŒr hĂ€ufig ein Template angepasst oder ein Layout-Block ergĂ€nzt, der spĂ€ter wieder entfernt werden muss. Das verursacht Abstimmung und birgt das Risiko, dass nach der Aktion etwas liegen bleibt. Wenn Inhalte manuell ĂŒber ihr Standard-Layout hinaus erweitert werden, muss man daran denken, sie danach wieder auf dieses zurĂŒckzustellen.
Mit Slots gibt es an der gewĂŒnschten Stelle im Layout einen definierten Platzhalter. Marketing weist ihm den Kampagneninhalt zu und ergĂ€nzt die Bedingungen fĂŒr Seiten und Zeitraum. Nach Ablauf verschwindet der Inhalt aus dem Slot, ohne dass jemand am Layout aufrĂ€umen muss.
Das Ergebnis: pĂŒnktliche Ausspielung, weniger Nacharbeit, weniger technische Eingriffe.
Weitere Anwendungen im selben Setup
- Regionale Hinweise: Informationen erscheinen nur in bestimmten Sprachvarianten oder Zielregionen.
- Redesign sichere Teaser: Hinweise, CTAs oder Infoboxen bleiben pflegbar, auch wenn das Seitenlayout ĂŒberarbeitet wird.
- Flexible Komponenten: Wiederverwendbare Bausteine enthalten Slots, die je Kontext unterschiedliche Inhalte zeigen.
Screenshots
Als Beispiel nutzen wir das Multisite-Projekt der Verbraucherzentralen. Wir betrachten einen "Knowledge" Inhalt (Wissensvermittlung). Diese Inhalte haben an sich ein festgelegtes Standard-Layout. Wir zeigen, wie man dort nach bestimmten Regeln weitere anreichernde Blöcke ausspielen kann.
Bild 1: FĂŒr eingeloggte und berechtigte Editoren sind in der Ansicht jedes Inhalts Platzhalter fĂŒr die verfĂŒgbaren Slots sichtbar.
Bild 2: Im Backend erstellen wir einen neuen Block. Wir nutzen hier beispielhaft einen sehr simplen "Sonderhinweis" Block, der nur ein Textfeld bereitstellt.
Wir setzen den Haken "Display this content in slot(s)", wĂ€hlen darunter den gewĂŒnschten Slot aus (wie oben zu sehen war: "slot_below_intro") und fĂŒgen die Bedingung hinzu, dass dieser Slot ausschlieĂlich auf Inhalten vom Typ "Knowledge" erscheinen soll. Das verhindert, dass er beispielsweise auch auf NewsbeitrĂ€gen erscheint. Die Bedingung erstellen wir natĂŒrlich auf Basis unseres Conditions Moduls, welches eine einheitliche und wiederverwendbare Basis an allen Stellen dafĂŒr bietet. Conditions ist Voraussetzung fĂŒr die Installation von Slots.
Bild 3: FĂŒr einen ĂŒblichen nicht eingeloggten betrachtenden User der Website wird der Slot nun (unten im Bild) ausgespielt. Das ist nur auf Wissensartikeln der Fall und ĂŒbertrĂ€gt sich nicht auf andere. Der Inhalt behĂ€lt immernoch sein Standard-Layout und ist davon nicht entkoppelt. Der Slot kann jederzeit aktualisiert, erweitert oder entfernt werden.
FĂŒr die Community, mit der Community
Wie immer entwickeln wir skalierfĂ€hige und hilfreiche Lösungen nicht fĂŒr unser "stilles KĂ€mmerlein" oder als Closed-Source-Geheimnis, sondern wir teilen sie mit der gesamten Drupal Community und der Code ist selbstverstĂ€ndlich öffentlich.
Auf dem DrupalCamp Berlin 2024 haben die Entwickler und Maintainer des Moduls â Senior Developer Dominik und Pascal â einen Vortrag darĂŒber gehalten.
Fazit
Ob CTA, zeitlich begrenzte Kampagne, Sonderangebot... die Anwendungsgebiete fĂŒr die flexiblen Slots sind unbegrenzt. Dabei behalten Inhalte ihr Standard-Layout bei und können dynamisch regelbasiert erweitert werden. Slots lohnt sich, wenn Inhalte regelmĂ€Ăig kampagnenbedingt wechseln, wenn Inhalte dynamische Content-Partien benötigen und maximale FlexibilitĂ€t gewĂŒnscht wird.
- Indikator fĂŒr einen passenden Use Case: Ihr erkennt Bedarf oft daran, dass Anforderungen mit Formulierungen starten wie: âDas soll nur auf diesen Seiten...", âDas soll nur in dieser Sprache..." oder âDas soll nur fĂŒr zwei Wochen...". Sobald solche Regeln immer wieder auftauchen, lohnt sich ein steuerbarer Platzhalter.
- Erster Schritt: PrĂŒft, welche Inhalte heute fest im Layout oder Template stecken und regelmĂ€Ăig kampagnenbedingt wechseln. Daraus lĂ€sst sich ableiten, an welchen Stellen Slots den gröĂten Effekt bringt.
Typ
Contrib ModuleWeitere Contributions
Sichtbare Beteiligung: Zeige unter jedem Beitrag, wer zugestimmt hat, statt nur einer Zahl.
Sichtbare Beteiligung: Zeige unter jedem Beitrag, wer zugestimmt hat, statt nur einer Zahl.
Zentrale Bedingungslogik, um Regeln wie Sprache, Seiten, Datum und mehr einheitlich redaktionell zu nutzen.
Zentrale Bedingungslogik, um Regeln wie Sprache, Seiten, Datum und mehr einheitlich redaktionell zu nutzen.
Konsistente Gin BearbeitungsoberflĂ€chen fĂŒr Redakteure auf allen Entities.
Konsistente Gin BearbeitungsoberflĂ€chen fĂŒr Redakteure auf allen Entities.