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.

Slots Beispiel: sichtbare Platzhalter im Content fĂŒr eingeloggte Editoren

 

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.

Slots Beispiel: Backend-Formular fĂŒr einen Slot mit Bedingungen

 

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.

Slots Beispiel: Ausspielung Slot-Block im Frontend des Inhalts

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.