Um Mehrsprachige Websites mit Drupal zu erstellen eignet sich das i18n Modul sehr gut. Damit lassen sich Menüs, Blöcke und Content in mehren Sprachen verwalten. Jedoch leidet i18n_menu unter einigen Fehlern.
Die primary-links werden nicht korrekt angezeigt. Im Menü werden alle Menü Einträge angezeigt, egal welche Sprache man eingestellt hat. Um dieses Problem zu umgehen lässt sich folgender Hack verwenden.
Folgendes Szenario ist für ein Deutsch / Englisch Menü gedacht, kann aber je nach Wunsch erweitert werden
Zunächst werde alle Deutsch Sprachigen Links im Primary Menü erstellt. Zusätzlich wird ein zweites Menü angelegt was alle Englischen Menü Punkte enthält. Der nun folgende PHP-Code wird je nach Sprache das passende Menü laden. Dieser wird in der page.tpl.php eingetragen, an der Stelle ersetzen wo print primary-links; geladen wird.
<?php
if ($language->language == 'de') {
print theme('links', $primary_links);
}
else {
$en_links = menu_navigation_links('menu-english'); /* menü eintragen was englische links enthält */
print theme('links', $en_links);
}
?>
Comments
flurinus (not verified)
26. August 2008 - 14:18
Permalink
sah auf den ersten blick
sah auf den ersten blick recht abschreckend aus, aber es funktioniert tadellos. danke, danke, danke!!
Add new comment