- Werbung -

Möchte man den Inhalt seiner Website in verschiedenen Sprachen präsentieren, so braucht man ein CMS, das dafür Unterstützung bietet - schließlich will man ja nicht für jede Sprache ein eigenes System installieren. Im folgenden werden Schritt für Schritt die nötigen Arbeiten beschrieben, um mit Drupal 6 eine solche mehrsprachige Seite aufzubauen. Dieser Artikel ist nicht für Drupal-Anfänger geeignet, denn er setzt voraus, dass man sich in der Bedienung von Drupal auskennt und die dort verwendeten Termini kennt.

In der Version 5 von Drupal bedurfte es noch der Unterstützung durch das Internationalization-Modul (auch i18n genannt), um eine Website mehrsprachig anzubieten. In Drupal 6 ist diese Funktionalität zu einem Teil in den Core übernommen worden. Aber eben nur zu einem Teil. Um eine Drupal 6-Seite vollständig mehrsprachig zu gestalten, ist das i18n-Modul noch immer unentbehrlich, sorgt es doch für die Übersetzung der Taxonomy, bietet mehrsprachige Blöcke, Menüpunkte und übersetzt benutzerdefinierte Strings. Je nach Struktur der geplanten Seite kann es sein, dass man nicht alle diese Optionen benötigt. In jedem Fall ist es wichtig, sich vor Beginn des Projektes genau zu überlegen, wie die mehrsprachige Seite später einmal aussehen soll. So vermeidet man überflüssige Nacharbeiten oder Übersetzungen, die dann doch nicht benötigt werden.

Vorbereitung

Zunächst sind ein paar Vorarbeiten zu erledigen, damit eine Drupal-Installation mehrere Sprachen bedienen kann.

Als erstes installiert und aktiviert man das bereits erwähnte Internationalization-Modul. Anschließend aktiviert man die Module "Content Translation" (unter "Verwalten -> Strukturierung -> Module"), Locale" und alle benötigten Module unter "Mehrsprachigkeit" - welche dies sind, entscheiden die Anforderungen an die Website. Wer zum Beispiel keine Umfragen benutzt, kann "Poll aggregate" ausgeschaltet lassen.

Einstellungen des Moduls Internationalization

Einstellungen des Moduls Internationalization

Dann fügt man unter "Verwalten -> Einstellungen -> Sprachen -> Sprachen hinzufügen" alle Sprachen hinzu, die unterstützt werden sollen (Drupal unterstützt derzeit über 150 Sprachen und Dialekte).

Mehrsprachiges System mit Englisch und Deutsch

Mehrsprachiges System mit Englisch und Deutsch

Nun muss Drupal noch wissen, welche Form der Spracherkennung gewünscht wird. Die Einstellung hierfür befindet sich unter "Verwalten -> Einstellungen -> Sprachen -> Konfigurieren". Hier erlaubt Drupal die Sprachzuordnung anhand der aufgerufenen Domain, auf Basis der Sprache des aufrufenden Browsers oder aufgrund der Spracheinstellung des Users auf seiner Profilseite. In unserem Fall haben wir die Einstellung "Pfadpräfix mit Rückfallsprache" gewählt. Diese bewirkt, dass die Website in der Sprache ausgegeben wird, die anhand des Pfades der Seite ermittelt wurde (nach Vergleich mit dem in den Spracheinstellungen hinterlegten Sprachcodes, z.B. "de" für Deutsch). Kann die Sprache so nicht erkannt werden, wird sie anhand der bevorzugten Sprache des Benutzers (die in seinem Benutzerprofil eingestellt werden kann) oder anhand der Einstellungen im Browser ermittelt. Führt auch dies nicht zum Erfolg so wird die Standardsprache verwendet.

Methode der Spracheinstellung in Drupal 6 festlegen

Konfiguration der Spracherkennung in Drupal

Als nächstes stellt man ein, für welche Inhaltstypen die Mehrsprachigkeit verfügbar sein soll. Unter "Verwalten -> Inhaltsverwaltung -> Inhaltstypen" kann man dies für jeden Inhaltstyp ein- oder ausschalten.

Mehrsprachigkeit pro Inhaltstyp einrichten

Mehrsprachigkeit pro Inhaltstypen einrichten

Jetzt wählt man noch welcher Inhalt in Abhängigkeit von der aktuellen Seitensprache und der standardmäßigen Sprache der Website angezeigt wird. Hierfür stehen unter "Verwalten -> Einstellungen -> Sprachen -> Mehrsprachiges System" diese Optionen zur Auswahl:

  1. Aktuelle Sprache und Sprachneutral.
  2. Gemischte aktuelle Sprache (wenn verfügbar) oder die standardmäßige Sprache (wenn nicht) und Sprachneutral.
  3. Nur die standardmäßige Sprache und Sprachneutral.
  4. Nur die aktuelle Sprache.
  5. Aller Inhalt. Es treffen keine Sprachbedingungen zu.

Der erste Punkt sorgt dafür, dass der Inhalt ausgegeben wird, der der aktuellen Sprachauswahl entspricht. Gibt es diesen nicht - weil die Übersetzung noch fehlt - so wird die sprachneutrale Version ausgeben. Existiert diese ebenfalls nicht, so wird kein Inhalt angezeigt. Wird Einstellung 2 gewählt, so kann alternativ der Inhalt der Standardsprache angezeigt werden (bei einer deutschen Website wird das in der Regel der deutsche Inhalt sein). Option 3 gibt dagegen keinerlei Übersetzungen aus, sondern nur Inhalte der Standardsprache und solche ohne Sprachfestlegung. Nr. 4 gibt ausschließlich Inhalte in der aktuellen Sprache aus, neutrale Inhalte oder solche der Standardsprache werden nicht angezeigt. Die fünfte Option gibt alle Inhalte aus, gleich zu welcher Sprache sie gehören - dies kann für Testzwecke eine sinnvolle Wahl sein.

Einstellungen für Sprachwahl bei Ausgabe der Inhalte

Einstellungen für Sprachwahl bei Ausgabe der Inhalte

Taxonomy

Im nächsten Schritt wird für jedes Vokabular, dass mehrsprachig sein soll, der gewünschte Übersetzungsmodus eingerichtet. Dabei kann bei jedem Vokabular eine dieser vier Optionen gewählt werden.

  1. Keine. Keine mehrsprachigen Optionen für dieses Vokabular.
  2. Begriffe lokalisieren. Begriffe sind für alle Sprachen gleich, aber ihr Name und die Beschreibung können lokalisiert werden.
  3. Begriffe pro Sprache. Unterschiedliche Begriffe sind für jede Sprache zulässig und können übersetzt werden.
  4. Sprache für Vokabular einstellen. Das Vokabular wird eine globale Sprache haben und wird nur auf Seiten in dieser Sprache angezeigt.

Die Einstellung "Keine" deaktiviert die Mehrsprachigkeit. Das kann zum Beispiel dann sinnvoll sein, wenn eine Übersetzung nicht möglich oder nicht sinnvoll wäre. So enthält das Vokabular "Autoren" auf auge.de lediglich Namen, die nicht übersetzt werden. Option 2 ist dann sinnvoll, wenn der Begriff selbst zwar nicht übersetzt werden soll - beispielsweise der Name einer Pflanze in lateinischer Sprache - die Beschreibung dazu aber sehr wohl. Optionen 3 und 4 bieten weitere Möglichkeiten und erlauben nicht nur die vollständige Übersetzbarkeit, sondern auch das Einrichten von Vokabularen exklusiv für eine Sprache.

Lesbare URLs

In der Regel wird man bei seiner Drupal-Installation die Funktion "Lesbare URLs" aktiviert haben. In diesem Fall möchte man natürlich, dass die Pfade ebenfalls komplett übersetzt werden. Dazu kann man in "Verwalten -> Strukturierung -> URL Aliase -> Einstellungen für automatischen Alias" bei den Pfadeinstellungen für jede Sprache ein eigenes Muster eintragen und dafür sorgen, dass ein Alias, der in Deutsch "meine-domain.de/de/seite/mein-erstes-projekt" heißt, in der englischen Version als "meine-domain.de/en/page/my-first-project" ausgegeben wird. Das folgende Bild zeigt die dafür notwendigen Einträge.

Einträge für mehrsprachige URL-Aliase

Einträge für mehrsprachige URL-Aliase

Fortsetzung folgt

Damit ist das Ende des ersten Teils erreicht. Im zweiten Teil des Artikels werden Menüs, Blöcke und Inhalte behandelt.