Wertgarantie
Enterprise Nat.
Projektbeschreibung
2020 wurde die Umstellung von wertgarantie.de auf Drupal abgeschlossen - zum damaligen Zeitpunkt noch nicht in Form einer Distribution. Die Planungen zu einer konzerneigenen Distribution begannen im Folgejahr, als klar war, dass auch die österreichische Länderseite auf Drupal umgestellt werden sollte und ggf. weitere Länder folgen könnten. Im Oktober 2021 wurde wertgarantie.at dann auf der Basis der neuen Distribution gelauncht. Ende 2021 folgte die Umstellung der deutschen Länderseite. Mitte 2022 wurde als dritte Instanz die niederländische Länderseite mit Hilfe der Distribution ge-relauncht.Ein großer Vorteil von Drupal aus Kundensicht war es bei der Umstellung auf die Distribution, dass während der Entwicklungszeit der Distribution das bereits bestehende Setup “wertgarantie.de” parallel weiterentwickelt werden konnte und hierfür kein “Feature-Freeze” notwendig war. Anschließend wurde das “.de”-Setup zwar auch auf die Distribution umgestellt, konnte jedoch seine Zusatzfunktionen, die es gegenüber dem initialen Funktionsumfang der Distribution aufwies, behalten. Einige dieser Zusatzfunktionen wurden mittlerweile auch in die Distribution überführt und stehen damit nun allen Länder-Webseiten zur Verfügung.
Projektziele und -ergebnisse
Wertgarantie SE hatte die Anforderung, dass die Länderwebseiten technisch auf der Grundlage von Drupal konsolidiert werden sollen. Damit wird sichergestellt, dass neue Länderseiten mit geringerem Aufwand ausgerollt und in Betrieb genommen werden können. Es ergeben sich zwar beim Betrieb von mehreren Instanzen auf der Basis einer Drupal-Distribution zusätzliche Aufwände im Bereich Deployment und DevOps. Dies wird jedoch mehr als ausgeglichen durch den geringeren Wartungsaufwand und die Möglichkeit, die Systeme zentralisiert weiterzuentwickeln. Einmal entwickelte Funktionspakete der Distribution können anschließend allen laufenden Instanzen zur Verfügung gestellt werden.Ein weiteres Ziel des Kunden war, im Unternehmen selbst Drupal-Know-How aufzubauen und zu vergrößern. Daher arbeiten die Solution-Architects und Entwickler des Dienstleisters in einem gemeinsamen Projektteam mit angestellten Entwicklern und Projektleitern des Kunden zusammen. Diese Arbeitsweise ermöglicht es nicht nur, Reibungsverluste bei der Abstimmung und Kommunikation auf ein Minimum zu begrenzen. Sie schafft auch die Möglichkeit, die Kompetenzen der Inhouse-Entwickler immer weiter zu verbessern und Abnahmen und Qualitätssicherungsprozesse sehr effizient zu gestalten. Aufgrund der engen Abstimmung im gemeinsamen Team kommt es zudem praktisch nie zu Konflikten aufgrund unterschiedlicher Erwartungen oder kommunikativer Reibungsverluste.
Herausforderungen
**1. Technische Konzeption der Distribution**Eine große Herausforderung war, dass die Instanzen trotz aller Gemeinsamkeiten punktuell individualisierbar bleiben müssen. Um trotzdem die Vorteile einer Distribution bewahren zu können - also hauptsächlich die zentralisierte Weiterentwicklung und zentrale Wartbarkeit - hat unser Entwickler-Team eine Lösung auf der Basis von “Configuration Synchronizer” gewählt. So war es auch möglich, das schon vorhandene Setup wertgarantie.de parallel zur Distribution weiterzuentwickeln und im Anschluss trotzdem auf diese umzustellen.
**2. Content-Verwaltung auf Steroiden**
Eine weitere Herausforderung war es, dem Kunden die Möglichkeit zu geben, mit begrenzter “Inhouse-Power” an redaktionellem Personal trotzdem schnell und unkompliziert zahlreiche SEO-taugliche Content-Seiten oder Landing-Pages erzeugen und redaktionell pflegen zu können. Hierfür entwickelte erdfisch das Konzept der “virtuellen Entities”.
Diese funktionieren wie reale Drupal-Entities, werden jedoch dynamisch aus vorhandenen Content-Bausteinen des Systems erzeugt. Inhaltstypen und Taxonomien sind dabei frei kombinierbar. Aus einigen hundert Inhalten oder Taxonomie-Terms lassen sich damit rein rechnerisch also viele tausend virtuelle Seiten generieren, die alle unterschiedlich sind.
Z.B. gibt es eine Taxonomie über Orte, die Städtenamen enthalten, und es gibt Inhalte zu verschiedenen versicherbaren Geräteklassen - etwa Smartphones und dann hier konkret Smartphone-Reparatur. Mit virtuellen Entities lassen sich nun die Informationen aus beiden Bereichen automatisch kombinieren, und ermöglichen die dynamische Erzeugung einer speziellen Landing-Page (z.B. Smartphone-Reparatur-Dienstleistungen in Hamburg) mit einer passenden aufrufbaren URL.
Weiterhin existiert mittlerweile für die virtuellen Entities auch eine Views-Integration, sodass diese sogar ihrerseits nun wieder in anderen Bereichen des Projekts, die mit Views erzeugt werden, Verwendung finden können, wie beispielsweise als Blöcke. Mit virtuellen Entities kann die interne Content-Creation-Abteilung von Wertgarantie somit eine weitaus größere Anzahl an absoluten Seiten erzeugen und administrieren, als wenn diese alle auf konventionelle Art erstellt werden müssten.
**3. Kontext is King**
Eine dritte Herausforderung war es, Redakteuren die Möglichkeit zu geben, den Kontext zu manipulieren, in dem von ihnen erstellte Inhalte ausgegeben werden, also diejenigen Elemente, die gemeinsam mit dem eigentlichen redaktionellen Inhalt gerendert werden, wie beispielsweise Menüs, Teaser-Blöcke oder Web-Formulare.
Zwar verfügt Drupal mit Contextual Filter über ein System, kontextabhängig Operationen auf einer Seite durchzuführen. Die Bedienung ist aber nicht ganz einfach und zudem eher für Sitebuilding gedacht, nicht für den redaktionellen Einsatz. Für das Wertgarantie-Setup hat erdfisch daher die Verwendung von Kontexten in einem Drupal-Setup stark vereinfacht. Dieser Lösungsansatz ist plugin-basiert. Werden neue Kontexte benötigt, können diese als neues Plugin geschrieben und integriert werden und stehen dann den Redakteuren zur Verfügung.
Redakteure wiederum können Kontexte im für sie vorgesehenen redaktionellen Backend nutzen. Z.B. können sie über den Kontext festlegen, mit welchen anderen Inhalten (z.B. Teaser, weiterführende Artikel, Call to Actions) ein bestimmter Inhalt angereichert werden soll. Geht es im zu bearbeitenden Artikel z.B. um Fahrräder, sollen andere zusätzliche Komponenten auf der fertig gerenderten Seite enthalten sein als, wenn es um Smartphones geht. Aber auch Elemente des Headers, Footers oder der Navigation können über die Wahl des Kontextes beeinflusst werden. All dies geschieht automatisch, sobald der passende Kontext ausgewählt wurde.
**4. Better Views Block**
Views ist bekanntlich das Schweizer Taschenmesser in Drupal für die Erzeugung von unterschiedlichen Ansichten einer Menge von Feldern, aus denen sich alle Inhalte Drupals letztlich zusammensetzen. So kann ein Artikel komplett in Vollansicht gerendert werden, oder es werden nur einzelne Elemente daraus in einem View verwendet, etwa ein aus Überschrift, Text und Foto bestehender Teaser oder vielleicht auch nur der Titel in Form einer Liste.
Da dem Variantenreichtum hier praktisch keine Grenzen gesetzt sind, steigt auch das Risiko, bei der Konfiguration Fehler zu machen, insbesondere wenn der eigentliche Fokus des Users darauf liegt, Content zu erstellen und zu verwalten. Daher existiert im Wertgarantie-Setup mit “Better Views Block” eine sehr nützliche Ergänzung, die es der Redaktion erspart, ins eigentliche Views-Backend abtauchen zu müssen, wenn sie z.B. neue Varianten eines Teasers benötigt. Mit Better Views Block können ausgehend von der Frontend-Ansicht des Views einfach und schnell neue Varianten erzeugt werden und stehen dann im Anschluss direkt wieder für die Verwendung zur Verfügung.
Community-Beiträge
Wir sensibilisieren bei all unseren Projekten unsere Kund:innen und erläutern die Vorteile, die Open-Source bieten und dass hierfür auch Ergebnisse aus den Projekten zurückgeben werden sollten. Dies hat auch positive Effekte für unsere Kund:innen.Bei unserer Entwicklung haben wir im Blick, ob eine Neuentwicklung nicht zu speziell auf den Businesscase zugeschnitten ist. Besteht ein grundlegendes Interesse, beraten wir unsere Kund:innen, damit das Modul in einer generischen Version der Community zur Verfügung zu stellen.
Wir erdfische sind Mitglieder im Drupal e.V. und erdfisch Gründungsmitglied des Drupal Business e.V.
Überdies unterstützen wir seit unserer Gründung 2005 die Community durch unsere aktive Teilnahme an Drupal-Community durch das Sponsern von Veranstaltungen, wie auch der Organisation von Drupal Events wie de Drupal-Business-Days oder der Mitorganisation der europäischen DrupalCon in Darmstadt 2018.