Redaktionssystem der pludoni GmbH

Montag, 21. Dezember 2015, 11:18 Uhr

Da unsere Mitarbeiter immer fleißig Beiträge zu Neuigkeiten unserer Services und Portale schreiben, wurde es Zeit, ihnen dafür ein zeitgemäßes Werkzeug zur Verfügung zu stellen. Entstanden ist ein zunächst noch firmeninternes Redaktionssystem zur zentralen Verwaltung aller Blogbeiträge.

Aktueller Stand und Anforderungen

In bestehenden Systemen wurden verschiedene WYSIWYG (what you see is what you get) Editoren verwendet, die oftmals Probleme, zum Beispiel im entstandenen Markup verursachten oder schon bei der Eingabe ungewünschte Ergebnisse lieferten. Inhalte die auf mehreren Services erscheinen sollten, mussten kopiert und ggf. mehrfach angepasst werden. Es war zudem notwendig, dass sich unsere Mitarbeiter in mehrere verschiedene Blogsysteme einarbeiten mussten, um selbst Inhalte zu erstellen. Diese Systeme mussten zudem in jedem Service wieder neu implementiert werden, weshalb auch aus Programmiersicht eine Verbesserung des aktuellen Zustands nötig war.

Die Anforderungen des Systems sind neben einer zentralen Verwaltung der Beiträge, Autoren - und Moderatorenmanagement sowie Freischaltmechanismen für die angeschlossenen Services und Portale auch ein funktionsfähiger Texteditor zur Erstellung der Beiträge

Konzeption

Die nachfolgende Abbildung macht deutlich, wie das Redaktionssystem den Anforderungen gerecht werden kann. Für die Verwaltung der Blogs kann im Redaktionssystem eine zentrale Weboberfläche zur Verfügung gestellt werden. In dieser Oberfläche lassen sich verschiedene Nutzerrollen wie Autoren und Moderatoren festlegen und interne Rechtekonzepte abbilden. Zudem können die Beiträge in der Weboberfläche erstellt und berarbeitet werden. Auf diese Weise ist es nicht mehr notwendig die Beiträge für jeden Service zu schreiben und ggf. im Nachhinein anzupassen. So ist jeder Beitrag nur einmal vorhanden, was der Konsistenz stark zu Gute kommt. Von Moderatoren freigegebene Beiträge können anschließend an die angeschlossenen Portale und Services verteilt werden.

Redaktionssystem Architekturübersicht

Redaktionssystem Architekturübersicht

Verteilung der Beiträge

Bei der Verteilung der Beiträge fiel die Entscheidung auf ein Web-Service orientiertes Konzept. Das Redaktionssystem greift dabei als Web API Client auf eine Schnittstelle (Web API) in den angeschlossenen Systemen zu um Blogbeiträge sowie Autoren einzuspeisen und ggf. Änderungen zu aktualisieren. Dieses Konzept hat den Vorteil, dass die Beiträge umgehend aktualisiert und die Darstellung, die auf Portalen und Services kleine Unterschiede hat, sofort überprüft werden kann.

Umsetzung

Das Redaktionssystem wurde, wie die meisten anderen Services der pludoni GmbH, mit dem Framework Ruby on Rails entwickelt. So konnten bestehende Erweiterungen genutzt und das System gut in die Systemarchitektur eingebunden werden.

Die Web API wurde in Form eines Moduls (im Ruby Kontext Gem genannt) implementiert und konnte so ohne großen Aufwand in die anzuschließenden Systeme eingebunden werden. Neben Einbindung der Schnittstelle gehörte noch die Anpassung der Darstellung (Layouts, Farben) an das Portal/Service und die Überführung von bestehenden Beiträge in das neue System zu den Aufgaben bei der Implementierung.

Im Redaktionssystem kommt der Texteditor SirTrevor zum Einsatz, der einen neuartigen Ansatz für die Erstellung von Web Inhalten verwendet. SirTrevor unterscheidet zwischen Struktur und Darstellung eines Beitrags. Das bedeutet, Inhalt wird strukturiert im JSON-Format gespeichert und kann nach belieben dargestellt werden. Das hat für uns den Vorteil, dass Inhalte strukturiert und gut testbar gespeichert und in den angeschlossenen Systemen individuell dargestellt werden können.

SirTrevor ist zudem sehr gut erweiterbar. Neben den mitgelieferten Blöcken (Jede Art von Inhalt wird durch einen Block repräsentiert) wie Text, Bild und Listen wurde das System um Blöcke wie Bild neben Text, Bildergalerie, Dateianhänge und Video erweitert.

Zusammenfassung und Ausblick

Es konnte ein zentrales System entwickelt werden, dass den Verwaltungsaufwand der Blogbeiträge in den Anwendungen der pludoni GmbH, minimiert. Die Beiträge können nun von Moderatoren des Systems ensprechend freigeschaltet und verteilt werden. Die Einbindung von SirTrevor in eine Rails-Anwendung war einfach und der Texteditor funktioniert gut. Meiner Meinung nach, hat aber auch dieser Editor noch Probleme, z.B. mit dem Text Formatter (scribe). Allerdings ist SirTrevor OpenSource auf Github verfügbar und wird stetig weiterentwickelt.

Neben technischen Weiterentwicklungen am System soll das Redaktionssystem in Zukunft nicht nur Mitarbeitern von pludoni sondern auch externen Autoren zur Verfügung stehen um eigenen Inhalte in die Portale und Services einzubringen und den Communitygedanken des Empfehlungsbundes auch in diesem Bereich zu stärken.