Zum Inhalt springen

Sprache in Typo3

Erstellt am 14. Februar 2006 · 6 Antworten · letzte Antwort am 15. August 2006

Tags: Frage

TMoS ·

Hallo zusammen

Kann man in TypoScript abfagen machen a la:

if sprache = de
...
else
...

Eigentlich geht es mir nur um einen Titel der in Typo-Template Setup gesetzt ist..
thx4help
Gruss
TMoS

Unbekannter Benutzer ·

übergabe der Sprache durch einen Parameter (in diesem Fall "L"):

# Parameter für Sprachkennzeichnung
config.linkVars = L

# Definition Standardsprache
config.sys_language_uid = 0
config.language = de

# wenn kein Parameter L gesetzt -> Titel in Standardsprache Deutsch
 // Code (Bsp: Deutsch)

# wenn Par. L = 1, dann französischer Titel
[globalVar = GP:L = 1]
 // Code (Bsp: Französisch)
[global]

# wenn Par. L = 2, dann englischer Titel
[globalVar = GP:L = 2]
 // Code (Bsp: Englisch)
[global

Ist aus dem Kopf, sollte aber hinkommen.

Beachte:
[global]-Anweisungen müssen ausserhalb jeglicher geschweifter Klammern stehen!

einpraegsam.​net ·

Du kannst sogar die Browsersprache deines Besuchers abfragen.

[language = *de*, *de-at*, *de-lu*, *de-ch*, *de-li*]
page.10.marks.TEMP = TEXT
page.10.marks.TEMP.value = Ein deutschsprachiger Besucher
[END]
TMoS ·

sorry das ich nicht geantwortet habe.. lang lange zeit krank im bett..

also ich denke da von wunschtacho ist die lösung für mein problem 🙂

thx für euere mühen

TMoS ·

leider haben wir am ziel vorbeigeschossen:

das problem ist vollgendes:
ich habe eine "Neuste Änderungenbox auf der Seite..
Die ist so gemach:

# Neuste Änderungen Box
#######################################
temp.top10 = COA 
temp.top10 {
  10 = LOAD_REGISTER
  10{
    lvl1uids.cObject = CONTENT
    lvl1uids.cObject {
      table=pages
      select.pidInList.data = leveluid:0
      renderObj = TEXT
      renderObj.field = uid
      renderObj.wrap = |,
    }
    lvl2uids < .lvl1uids
    lvl2uids.cObject.select.pidInList.data= register:lvl1uids
    lvl3uids < .lvl1uids
    lvl3uids.cObject.select.pidInList.data= register:lvl2uids
    lvl4uids < .lvl1uids
    lvl4uids.cObject.select.pidInList.data= register:lvl3uids
    lvl5uids < .lvl1uids
    lvl5uids.cObject.select.pidInList.data= register:lvl4uids
    alluids.cObject = COA
    alluids.cObject {
      10=TEXT
      10.data = register:lvl1uids
      20=TEXT
      20.data = register:lvl2uids
      30=TEXT
      30.data = register:lvl3uids
      40=TEXT
      40.data = register:lvl4uids
      50=TEXT
      50.data = register:lvl5uids
      60=TEXT
      60.data = leveluid:0			
    }
     
  }
  20 = CONTENT
  20 {
    table = tt_content
    select {
      pidInList.data = register:alluids
      orderBy = tstamp DESC
      languageField=sys_language_uid
      max = 5
    }
    renderObj = COA
    renderObj {
      10 = TEXT
      10.field = header
     10.typolink.parameter.field=pid
      10.typolink.parameter.stdWrap.dataWrap=#uid
     10.wrap = |
      20 = TEXT
      20.wrap =  <br />| 
    }  
  }

wrap=<table cellspacing="0" cellpadding="0" width="100%"><tr><td colspan="2"><h2>Neuste Änderungen</h2></td></tr><tr><td width="10"></td><td>|</td></tr></table>   

config.sys_language_uid.if{
 value = 2 
wrap=<table cellspacing="0" cellpadding="0" width="100%"><tr><td colspan="2"><h2>Latest Changes</h2></td></tr><tr><td width="10"></td><td>|</td></tr></table>   
}
}

und damit:

config.sys_language_uid.if{
 value = 2 
 warp = ...
}

will ich den titel ändern..
deutsch -> englisch etc..

das geht nicht..
warum?

thx

toms ·

Vielleicht hast du dich einfach nur vertippt. Dein zweites Script lautet ".warp" aber es müsste ".wrap" heißen.

Kilkenny ·

Warum machst du es nicht so wie weiter oben beschrieben mit der [global] Variante?
Zu beachten dabei ist nur, dass diese nicht in geschweiften Klammern funktioniert.
Also sollte deine Sache so aussehen:

 wrap=<table cellspacing="0" cellpadding="0" width="100%"><tr><td    
          colspan="2"><h2>Neuste Änderungen</h2></td></tr><tr><td 
          width="10"></td><td>|</td></tr></table>   
    }
  }

[globalVar = GP:L = 2]
temp.top10.wrap=<table cellspacing="0" cellpadding="0" width="100%"><tr><td colspan="2"><h2>Latest Changes</h2></td></tr><tr><td width="10"></td><td>|</td></tr></table>   
[global]

Wenn ich das mit den Klammern auf die Schnelle richtig gemacht habe. Aber das Printip funktioniert so.

Hoffe geholfen zu haben.

Gruß