Frage zu mehrsprachigem CSS-Menu

Begonnen von icebreaker, 11 Dezember 2014, 16:22:11

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

icebreaker

Hallo
In vielen neuen Themes ist es ja möglich, das CSS-Menu zu nutzen. Allerdings weiß ich nicht, wie ich es anstelle, mehrere CSS-Menus für verschiedene Sprachen anzulegen. Habe zwar schon im Forum gesucht, aber nichts passendes gefunden. Ich würde die Menus dann gerne mittels Menumanager anlegen und konfigurieren.

Gruß
icebreaker

fjuergens

Hi ... kannst Du Dir auf meiner Seite... www.kitmarshop.eu ansehen
da habe ich es mit dem menümanager gemacht.....
mit netten Grüßen aus Athen / GR
F.Juergens

icebreaker

Hi

Sieht gut aus, nun wüsste ich aber gerne auch, wie du das gemacht hast.

Gruß
icebreaker

Olaf

Möglich ist, in der jeweiligen Settings.php eine Abfrage zu erstellen, die sprachabhängig ein Menu auswählt...

also:
switch $currentlang {
     case 'german' : $themesetting['head_css_menu'] = 'deutsches_menu';
     ....
}
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

fjuergens

ist doch ganz einfach...
wen mehr als eine Sprache installiert ist.... erstelle ich ein menü das zum Beispiel für englisch ist.... beim umstellen der Portalsprache wird dann auch automatisch das englische menü aufgerufen
mit weiteren Sprachen geht das genauso....
Ist also nicht erforderlich in den Settings rumzubasteln....
mit netten Grüßen aus Athen / GR
F.Juergens

icebreaker

Hallo Olaf

Ich habe das jetzt so in der settings.php eingetragen:
switch $currentlang {
     case 'german' : $themesetting['head_css_menu'] = '{CSS-MENU-DE}';
     case 'english' : $themesetting['head_css_menu'] = '{CSS-MENU-EN}';
$themesetting['head_css_menu'] = '{CSS-MENU-DE}'; // z.B.: {CSS-MENU}
$themesetting['head_css_menu'] = '{CSS-MENU-EN}'; // z.B.: {CSS-MENU}


Allerdings bekomme ich dann eine weiße Seite, statt des Template zu sehen.

Gruß
icebreaker

Olaf

Habe den Code mal syntaxtechnisch korrigiert.
Da fehlten noch die "Break"'s und die abschließende Klammer '}'

switch ($currentlang) {
     case 'german' : $themesetting['head_css_menu'] = '{CSS-MENU-DE}';break;
     case 'english' : $themesetting['head_css_menu'] = '{CSS-MENU-EN}';break;
     default : $themesetting['head_css_menu'] = '{CSS-MENU-DE}';break;
}

Natürlich musst du noch die richtigen Menus zuweisen und diese sollten natürlich auch vorhanden sein :)

g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

icebreaker

Hallo Olaf

Ich habe das jetzt mit den Themes "ahimsa" und "ala_lingu" getestet. Mit dem "ahimsa" funktioniert es, allerdings wird in beiden Sprachen deutsch und englisch das gleiche angezeigt (deutsch), obwohl ich z.B in deutsch "Impressum" und in englisch "Impress" im entsprchenden CSS-MENU als Bezeichnung eingetragen habe.

Beim "ala_lingu" ist ja in der settings.php noch der Eintrag für das mobile Menu. Wenn ich das hier eintrage, erhalte ich eine weiße Seite:
switch $currentlang {
     case 'german' : $themesetting['head_css_menu'] = '{CSS-MENU-DE}';break;
     case 'english' : $themesetting['head_css_menu'] = '{CSS-MENU-EN}';break;
     default : $themesetting['head_css_menu'] = '{CSS-MENU-DE}';break;
$themesetting['mobile_css_menu'] = '';break;// z.B.: {CSS-MENU}
}


Gruß
icebreaker