[TYPO3-german] mehrsprachige News

Joerg Wagner news.netfielders.de at digilog.de
Tue Nov 18 17:02:54 CET 2008


Hallo Jörg,

 > Folgender TS-Setup Eintrag für die SingleView Seite behebt dieses
 > Problem:
 >
 > # GetParameter for tt_news language-switch in singleView
 > config.linkVars = L,tx_ttnews,cHash

das solltest Du auf keinen Fall tun!
Damit erhält nicht nur das Sprachwechsel-Menü die zusätzlichen 
GET-Parameter, sondern ALLE Links auf ALLEN Seiten Deiner Seite erhalten 
die Parameter angehängt (meistens mit leerem Inhalt). Außerdem darf 
cHash nicht einfach von Sprache zu Sprache unverändert übergeben werden, 
da der cHash-Wert für die gleiche Seite in unterschiedlichen Sprachen 
ein anderer ist - Du führst den Cache damit in die Irre.

Mir sind zwei richtige Lösung bekannt:

1.
Ein Sprachwahlmenü mit HMENU und addQueryString=1. Sieht z.B. so aus:
-----------------------------------------
lib.langSelect = HMENU
lib.langSelect {
   special = language
   special.normalWhenNoLanguage = 0
   special.value = 0,1,2

   addQueryString = 1
   addQueryString.exclude = id, L, cHash

   1 = TMENU
   1 {
     NO = 1
     NO {
       stdWrap.setCurrent = English || Français || Deutsch
       stdWrap.current = 1
     }
     ACT < .NO
     ACT{
       doNotLinkIt = 1
     }
     USERDEF1 < .NO
     USERDEF1{
       doNotLinkIt = 1
     }
   }
}
-----------------------------------------

2.
Erzeugung des Menüs direkt per PHP-Script. Hierzu gibt es im alten TYPO3 
Testsite Package ein Beispiel, das in der Extension tt_news als 
überarbeitet Version beiliegt, die die GET-Parameter im Sprachmenü 
anhängt. Zu finden hier:
EXT:/tt_news/res/tt_news_languageMenu.php



Beide Versionen funktionieren, haben aber je eine Einschränkung:

bei 1.
Für die Sprachlinks wird kein neuer cHash erzeugt, Seiten mit 
zusätzlichen GET-Parametern (z.B. von tt_news) werden also bei Wechsel 
der Sprache neu gerendert. Kein wirkliches Problem, da es eher selten 
vorkommt und zu korrekten Ergebnissen führt.

bei 2.
Das PHP-Script macht in der gegenwärtigen Version auch noch den Fehler, 
den cHash-Wert unverändert an die anderssprachige Seite weiterzugeben. 
Das ließe sich aber im Script beim Aufruf der typolink-Function korrigieren.


Viele Grüße,
Jörg.




jok schrieb:
> Rob Jansen schrieb:
>> Dennis,
>>
>>> ich suche schon eine Weile nach einer Möglichkeit, einen Newseintrag 
>>> sowohl auf deutsch, als auch auf englisch zu verfassen, damit man auf 
>>> der Einzelansicht die Sprache auch wchseln kann, ohne eine 
>>> Fehlermeldung wg. falscher ID zu erhalten.
>>
>> Hast du schon meherere Sprachen (Engllish / Deutsch)?
>> Wenn nicht: Im "Web / List" view "Create new record" / "Website 
>> Language" und Deutsch als Sprache erstellen.
>>
>> Dann im web / template (setup) so etwass erstellen (der UID soll 
>> gleich sein an ID von website language):
>>
>>     config.linkVars = L
>>     [globalVar = GP:L = 1]
>>        config.sys_language_uid = 1
>>        config.language = de
>>        config.local_all = Deutsch
>>     [global]
>>
>> Der news Seite auf's Deutsch übersetzen (in web/page view rechts-oben 
>> im pull-down box "languages" statt "columns" auswählen und dann "make 
>> new translation of this page"), ein (Englischer) Newseintrag editieren 
>> und rechts oben im pull-down box by "default" "Deutsch [new]" wählen.
>>
>> Hat bei mir (ok - mit Holländisch) so funktioniert.
>>
>> Es gibt nur ein Problem: Das Datum ist noch immer auf's English (wie 
>> "Saturday 03. of November 2007 Age: 5 days")
>>
>> Grüß,
>>
>>     Rob
>>
>> --  manual, welches Manual??? Es gibt so viele ...
> 
> Wenn alles richtig eingestellt/erstellt (wie oben beschrieben) dann 
> werden die beim Wechsel der Sprache immer noch diverse GET-Parameter 
> verschluckt:
> 
> tx_ttnews[tt_news]
> tx_ttnews[backPid]
> cHash=3ff6d53f62
> 
> Folgender TS-Setup Eintrag für die SingleView Seite behebt dieses Problem:
> 
> # GetParameter for tt_news language-switch in singleView
> config.linkVars = L,tx_ttnews,cHash
> 
> Gruß Jörg
> 


More information about the TYPO3-german mailing list