Zum Inhalt springen

Probleme mit Mehrsprachigkeit

Erstellt am 28. Februar 2007 · 2 Antworten · letzte Antwort am 28. Februar 2007

Tags: Frage

Devil ·

Hy Leute,

ich benutze Typo 4.0.4 und TemplaVoila 1.3.0.

Nun habe ich mit Hilfe des Buches "Das Typo3 Anwenderhandbuch" ein Sprachmenü mit TypoScript erstellt. Dieses funktioniert auch blendent. Bei Klick auf eine Sprache wird sowohl mein Menü als auch mein Content in eine andere Sprache übersetzt. Nur wenn ich auf einen Menüpunkt klicke, geht er wieder auf die Defaultsprache zurück, da er mir den L-Parameter nicht mit übergibt. Weiß jemand woran das liegen kann?

In dem Buch stand, wenn man den Code wie hier unten beschrieben nimmt, dann solle man linkVars = L weglassen, da dies vom Sprachmenü selber erzeugt wird. Das stimmt auch. Bei Klick auf die Sprache erzeugt er den Link mit &L=x. Nur das halt dann das L nicht mehr mit übergeben wird, wenn man auf einen Menüpunkt klickt.
Mache ich linkVars = L allerdings rein, habe ich keine Probleme mit der Umstellung der Sprache.
Nur das er mir in der Adresszeile beim Umschalten der Sprache erst einmal 2 L-Parameter anhängt. Den alten z.b. deutsch und den neuen z.b. englisch &L=0&L=1.

Ich wäre sehr froh, wenn mir jemand von euch helfen könnte! Danke schon einmal im Voraus.

Mein Code:

config {
   #linkVars = L
   #sys_language_mode = Strict
   sys_language_uid = 0
   sys_language_overlay = 1
   language = de
   locale_all = german
}

[globalVar = GP:L = 1] 
   config.sys_language_uid = 1 
   config.language = en 
   config.locale_all = english 
[globalVar = GP:L = 2]
   config.sys_language_uid = 2 
   config.language = fr 
   config.locale_all = french 
[global]

lib.langMenu = HMENU
lib.langMenu {
   special = language
   special.value = 0,1,2
   1 = TMENU 
   1 {
      wrap = <table border="0" cellpadding="0" cellspacing="0" width="195px" height="28px"><tr><td width="30px"></td>|<td width="70px"></td></tr></table>
      NO = 1
      NO {
      	linkWrap = <td class="no" valign="bottom">|</td>
      	stdWrap.override = deutsch || englisch || französisch
      }
      ACT = 1
      ACT < .NO
      ACT.linkWrap = <td class="act" valign="bottom">|</td>
      USERDEF1 = 1
      USERDEF1 < .NO
      USERDEF1.doNotLinkIt = 1
   }
}

Devil

just2b ·

blende das linkVars = 1 wieder ein und dazu noch ein
config.uniqueLinkVars = 1

und alles funktioniert wunderbar

georg