Internationale Web-Inhalte einfach pflegen

Mehrsprachige Layout-Texte in Websites komfortabel mit dem CMS verwalten

Marcel Goretzki
CMS Layout Mehrsprachigkeit
Eine Webseite in mehreren Sprachen zur Verfügung zu stellen, kann nicht nur auf der Content-Seite eine große Herausforderung sein. Auch das CMS muss dafür entsprechende Mechanismen bieten.
Neben der Verwaltung der einzelnen Inhaltsbereiche oder auch ganzer Seiten, gibt es weitere Worte, die in die entsprechenden Sprachen übersetzt werden können. Das können z.B. Beschriftungen für Buttons, die Label und Werte innerhalb von Formularen oder aber auch das in der Sprache übliche Datumsformat sein.
Beispiele für Layout-Texte, die übersetzt werden müssen

Wie kann man die Herausforderung, diese Übersetzungen komfortabel und einfach zu pflegen, lösen? 

Je nach Anzahl der Sprachen und Komplexität der Webseite werden in Projekten immer wieder verschiedene Ansätze verfolgt und umgesetzt. Textdateien werden herangezogen, CSV und Excel verwendet, Inhalte in Datenbanken abgelegt oder komplexe Dienste angebunden. Jede Neu-Entwicklung kostet dabei Zeit und Geld und nimmt einen Teil des Budgets ein, der an anderer Stelle und für den späteren Website-Besucher präsenter verwendet werden könnte.

Anwender-Wünsche erfüllen

Eine technische Lösung bietet das Open Source Framework Ruby on Rails. Es verfügt in den aktuellen Versionen über einen fest integrierten Übersetzungsmechanismus. Übersetzungen werden in einer yaml-Datei innerhalb der Rails-Applikation abgelegt.

Dieses Format eignet sich jedoch für weniger technisch versierte Redakteure der Webseite aus verschiedenen Gründen nicht:
  • Der Redakteur hat keinen Zugriff auf die Applikation. Einer Änderung in dieser Datei muss ein Neustart der Applikation folgen, damit die Änderungen auch auf der Webseite sichtbar sind.
  • Es ist nicht produktiv diese Dateien über den Umweg des Entwicklers pflegen zu lassen.
  • Redakteure sind nicht mehr in der Lage, ohne die Hilfe eines Entwicklers neue Sprachbäume anzulegen.
Betrachtet man die Anforderungen von Redakteuren, läuft es häufig darauf hinaus, dass sie die vom Layout vorgegebenen Texte auf der Seite, die sie gerade bearbeiten, sehen möchten. Der Redakteur möchte diese mit einem Klick ändern können.

Aus Sicht des Website-Verantwortlichen ist das Wunsch-Szenario ebenfalls schnell erklärt: Er möchte nur wenigen Nutzern bzw. bestimmten Nutzergruppen die Möglichkeit geben, diese für die Website wichtigen Texte zu ändern und das Fehlerpotenzial somit verringern. Doch über diesen Anforderungen steht der Projekt- und Budget-Verantwortliche, der die Wünsche natürlich gerne erfüllt, solange sie das Budget nicht übersteigen.

Ruby on Rails Gem: Hilfe mit Funktionserweiterung für das CMS

Einfach zu beschreibende Anforderungen auf der Nutzer-Seite erfordern meist komplexe Lösungen auf der technischen Seite. Dies lässt sich in der Regel nicht mit dem Ziel vereinbaren, dass es möglichst günstig sein soll. Das gilt mindestens so lange wie die entstandene Lösung nur in einem Projekt eingesetzt werden kann. Weil sich die Anforderung nach Mehrsprachigkeit aber in fast jedem Website-Projekt wiederfindet, lohnt es sich, hier Aufwand zu investieren.

Da Ruby on Rails wie erwähnt ein Open Source Framework ist, kann als eine Lösung für das Problem ein Gem (eine einfach in eine Ruby On Rails-Applikation zu integrierende Funktionserweiterung) entwickelt werden. Dieses kann die verschiedenen Anforderungen erfüllen und dennoch in jedem Projekt, ohne große zusätzlich zu schaffende Infrastrukur oder hohe Kosten integriert werden.

Ein Beispiel für solch ein Gem ist i6k . Es bietet eine auf den neusten Javascript-Technologien basierende Benutzeroberfläche, welche in die CMS-Seiten-Vorschau integriert und durch einen Klick (de-)aktiviert werden kann.

Das Stift-Icon aktiviert das Gem i6k
Das aktivierte Tool ermöglicht dem Redakteur die Suche nach und Bearbeitung von Layout-Texten
Diese können dann mit einem Klick verändert werden. Auch Texte mit dynamischen Bestandteilen wie Suchanfrage (“xx Ergebnisse für Ihre Suche nach yy”) können problemlos gepflegt und an den entsprechenden Satzbau angepasst werden.

Weitere Funktionen von i6k

  • Die Darstellung der Seite wird nicht beeinflusst.
  • Es gibt eine Suche über alle vorhandenen Begriffe und die Möglichkeit, gefundene Texte ebenfalls anzupassen. Auch nicht sichtbare Texte (z.B. nicht sichtbare HTML-Tags) können geändert werden.
  • Texte, verwendet in dynamischen (Javascript-) Applikationen, können geändert werden.
  • Handhabung von einfachem Text aber auch HTML ist möglich.
  • Es gibt eine an die Applikation und das Projekt anpassbare Rechteverwaltung.
  • Die Integration ist mit nur wenigen Zeilen Code möglich.
  • Die Aktualisierung der Live-Server erfolgt automatisch.
  • Es sind performance-optimierte Live-Funktionen inklusive komplexem Caching vorhanden.

Vorteile für Anwender

Aufgrund dieser Funktionserweiterung ist es inhaltlich verantwortlichen Website-Betreuern möglich, sonst feststehende Website-Texte einfach zu ändern. Ein weiterer Vorteil ist, dass die Erweiterung nur ein Mal in das bestehende System eingebaut werden muss, weitere Verzögerungen durch Projektdiskussionen oder Auseinandersetzungen mit anderen Abteilungen sind nicht nötig.

Das von Infopark entwickelte I6k ist bereits in Infopark-Projekten für das Großherzogtum Luxemburg und zahlreichen Seiten der Satelliten-Betreibergesellschaft SES zum Einsatz gekommen.
Bearbeitung und anschließendes Speichern des Layout-Textes "Comment"

 i6k…

…steht für "i(nfopar)k". In Anlehnung an i18n was für "i(nternationalizatio)n" steht, bei dem die große Anzahl an Buchstaben durch die einfachere Zahl ersetzt wurde.