Drupal 7 Mehrsprachigkeit

Bzgl. dem aktuellen Stand über Mehrsprachigkeit in Drupal 7 und Neuerungen ist folgende Drupalcon Session von Kopenhagen empfehlenswert: http://www.archive.org/details/IntroductionToI18NInDrupal7

Sehr knapp zusammengefasst: Neben einigen Neuerungen (Translatable Fields, Dynamic Data Translation) enthält Drupal 7 Core schon etwas mehr Bestandteile für eine mehrsprachige Webseite als Drupal 6, die hier noch extra über das contributed Modul i18n installiert werden mussten. Doch in oben genanntem Vortrag wird der Einsatz von Drupal 7 für mehrsprachige Webseiten aufgrund fehlender Bestandteile (i18n Modul noch nicht portiert) nicht empfohlen. Einfache Seiten sind aber mit ein paar Tricks bereits umsetzbar. Folgend die auf dieser Seite angewandten "Hacks":

i18n und Blöcke

Eines der in Drupal 7 Core fehlenden Dinge ist die out-of-the-box nicht vorhandene Möglichkeit, Blöcke nur bei einer aktiven Sprache anzuzeigen. Dies ist leider wohl frühestens erst bei Drupal 8 in Core. Hier gibt es aber einen einfachen workaround, in den Blockeinstellungen (Visibility settings -> Pages -> Pages on which this PHP code returns TRUE) gibt man folgenden Code-Snippet ein:

<?php 
  global $language;
  if ($language->language == 'LANGUAGE') {
    return TRUE;
  }
?>

 
Wobei LANGUAGE durch den Language-Code zu ersetzen ist. Dieser ist in den Spracheinstellungen (/admin/config/regional/language) definiert.

i18n und Menüs

Ein weiterer Punkt ist die (noch) nicht vorhandene Möglichkeit, Menü-Einträge einer Sprache zuzuordnen. Das ist nicht so einfach lösbar. Ein workaround wäre ein Menü pro Sprache anzulegen und die Menü-Blocks wiederum je nach aktiver Sprache anzuzeigen. Dies ist ev. eine Möglichkeit für kleinere Seiten mit nur einem Hauptmenü, aber sobald mehrere Menüs vorhanden sind, beispielsweise ein Hautpmenü und ein Submenü, wird das zu kompliziert. Hier wird also dringend eine Lösung benötigt. Wiederum leider wohl frühestens bei Drupal 8 in Core (vgl. http://drupal.org/node/362922), bei Drupal 7 sind wir diesbezüglich weiterhin auf contributed Module angewiesen.

Links

Session Introduction to internationalization in Drupal 7: http://cph2010.drupal.org/sessions/introduction-internationalization-dru...
Session Introduction to internationalization in Drupal 7 on archive.org: http://www.archive.org/details/IntroductionToI18NInDrupal7
i18n Modul (Drupal 6): http://drupal.org/project/i18n
Translation Modul (Drupal 7): http://drupal.org/project/translation
D7 Internationalisation Improvements: http://drupal.org/node/362922
i18nvariables for D7: http://drupal.org/node/899152
Session Translation Management Process in the Enterprise (Drupal 6): http://cph2010.drupal.org/sessions/translation-management-enterprise





Powered by Drupal7