Typo3 - Multilanguage Menu: Unterschied zwischen den Versionen
Aus Wikizone
| (3 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| + | == Sprachwechsler mit Domainauswertung == | ||
| + | |||
| + | Quelle: typo3blogger.com 18.1.2010 | ||
| + | |||
| + | <pre> | ||
| + | # Sprach-Links erzeugen | ||
| + | |||
| + | temp.langMenuDE = COA | ||
| + | temp.langMenuDE { | ||
| + | stdWrap.wrap = <li>|</li> | ||
| + | |||
| + | 10 = TEXT | ||
| + | 10.value = domain.de # die deutschsprachige Domain | ||
| + | 10.wrap = <a href="http://www.|/ | ||
| + | |||
| + | 20 = TEXT | ||
| + | 20.typolink { | ||
| + | parameter.data = TSFE:id | ||
| + | returnLast = url | ||
| + | additionalParams = &L=3 | ||
| + | addQueryString = 1 | ||
| + | addQueryString.method = GET | ||
| + | addQueryString.exclude = id # muss gesetzt werden, da ansonsten der id-Parameter 2x auftaucht | ||
| + | } | ||
| + | |||
| + | 30 = TEXT | ||
| + | 30.value = DEU | ||
| + | 30.wrap =">|</a> | ||
| + | |||
| + | } | ||
| + | |||
| + | |||
| + | temp.langMenuNL < temp.langMenuDE | ||
| + | temp.langMenuNL { | ||
| + | 10.value = domain.nl | ||
| + | 20.typolink.additionalParams = &L=0 | ||
| + | 30.value = NL | ||
| + | } | ||
| + | |||
| + | temp.langMenuFR < temp.langMenuDE | ||
| + | temp.langMenuFR { | ||
| + | 10.value = domain.fr | ||
| + | 20.typolink.additionalParams = &L=2 | ||
| + | 30.value = FR | ||
| + | } | ||
| + | |||
| + | |||
| + | # Menü zusammenbasteln | ||
| + | |||
| + | lib.langMenu = COA | ||
| + | lib.langMenu { | ||
| + | wrap = <div class="langmenu"><ul>|</ul></div> | ||
| + | |||
| + | 10 < temp.langMenuNL | ||
| + | 20 < temp.langMenuDE | ||
| + | 30 < temp.langMenuFR | ||
| + | } | ||
| + | |||
| + | # Active-State anhand von Domain bzw. L setzen | ||
| + | # falls man neu auf die Site gekommen ist | ||
| + | |||
| + | [globalVar = GP:L = 0] OR | ||
| + | [globalString = IENV:HTTP_HOST = www.domain.nl] | ||
| + | lib.langMenu.10 = TEXT | ||
| + | lib.langMenu.10 { | ||
| + | value = NL | ||
| + | stdWrap.wrap = <li class="act">|</li> | ||
| + | } | ||
| + | [globalVar = GP:L = 3] OR | ||
| + | [globalString = IENV:HTTP_HOST = www.domain.de] | ||
| + | lib.langMenu.20 = TEXT | ||
| + | lib.langMenu.20 { | ||
| + | value = DEU | ||
| + | stdWrap.wrap = <li class="act">|</li> | ||
| + | } | ||
| + | [globalVar = GP:L = 2] OR | ||
| + | [globalString = IENV:HTTP_HOST = www.domain.fr] | ||
| + | lib.langMenu.30 = TEXT | ||
| + | lib.langMenu.30 { | ||
| + | value = FR | ||
| + | stdWrap.wrap = <li class="act">|</li> | ||
| + | } | ||
| + | |||
| + | </pre> | ||
| + | [global] | ||
| + | |||
== Multilanguage Menu (1.11) == | == Multilanguage Menu (1.11) == | ||
| Zeile 148: | Zeile 234: | ||
Beide Flaggen werden gezeigt: | Beide Flaggen werden gezeigt: | ||
| + | <pre> | ||
// Service Navigation: | // Service Navigation: | ||
temp.navi_lang = COA | temp.navi_lang = COA | ||
| Zeile 204: | Zeile 291: | ||
} | } | ||
[global] | [global] | ||
| + | </pre> | ||
| + | |||
| + | Siehe auch [[TypoScript - Service Navigation]] | ||
Aktuelle Version vom 18. Januar 2010, 08:16 Uhr
Sprachwechsler mit Domainauswertung[Bearbeiten]
Quelle: typo3blogger.com 18.1.2010
# Sprach-Links erzeugen
temp.langMenuDE = COA
temp.langMenuDE {
stdWrap.wrap = <li>|</li>
10 = TEXT
10.value = domain.de # die deutschsprachige Domain
10.wrap = <a href="http://www.|/
20 = TEXT
20.typolink {
parameter.data = TSFE:id
returnLast = url
additionalParams = &L=3
addQueryString = 1
addQueryString.method = GET
addQueryString.exclude = id # muss gesetzt werden, da ansonsten der id-Parameter 2x auftaucht
}
30 = TEXT
30.value = DEU
30.wrap =">|</a>
}
temp.langMenuNL < temp.langMenuDE
temp.langMenuNL {
10.value = domain.nl
20.typolink.additionalParams = &L=0
30.value = NL
}
temp.langMenuFR < temp.langMenuDE
temp.langMenuFR {
10.value = domain.fr
20.typolink.additionalParams = &L=2
30.value = FR
}
# Menü zusammenbasteln
lib.langMenu = COA
lib.langMenu {
wrap = <div class="langmenu"><ul>|</ul></div>
10 < temp.langMenuNL
20 < temp.langMenuDE
30 < temp.langMenuFR
}
# Active-State anhand von Domain bzw. L setzen
# falls man neu auf die Site gekommen ist
[globalVar = GP:L = 0] OR
[globalString = IENV:HTTP_HOST = www.domain.nl]
lib.langMenu.10 = TEXT
lib.langMenu.10 {
value = NL
stdWrap.wrap = <li class="act">|</li>
}
[globalVar = GP:L = 3] OR
[globalString = IENV:HTTP_HOST = www.domain.de]
lib.langMenu.20 = TEXT
lib.langMenu.20 {
value = DEU
stdWrap.wrap = <li class="act">|</li>
}
[globalVar = GP:L = 2] OR
[globalString = IENV:HTTP_HOST = www.domain.fr]
lib.langMenu.30 = TEXT
lib.langMenu.30 {
value = FR
stdWrap.wrap = <li class="act">|</li>
}
[global]
Multilanguage Menu (1.11)[Bearbeiten]
TypoScript Template:
temp.multilang-navigation (1.11)
Constants
languageMenuScript = fileadmin/templates/scripts/languageMenu.php
Setup
# languageSwitch gibt die Flagge mit Link
# zum jeweiligen anderen Seitenbaum aus.
#Allgemeine Spracheinstellungen...
#############################################
### Einstellungen deutscher Seitenbaum... ###
#############################################
[PIDinRootline = 2]
### Spracheinstellungen ###
### Parameter L definieren 0 soll die default Sprache (deutsch) sein ###
config.linkVars = L
#values for default language
config.htmlTag_langKey = de_DE
config.sys_language_uid = 0
config.language = de
config.locale_all = de_DE
#config.sys_language_mode = content_fallback;0
config.sys_language_mode = strict
config.sys_language_overlay = hideNonTranslated
temp.languageSwitch = COA
temp.languageSwitch{
#5 = TEXT
#5.value = multil.
10 = IMAGE
10.file = fileadmin/templates/img/us.gif
10.altText = HfWU english startpage
10.titleText = HfWU english startpage
10.stdWrap.typolink.parameter = 218
}
[global]
### Einstellungen englischer Seitenbaum ###
[PIDinRootline = 218]
### Spracheinstellungen ###
### Parameter L definieren 0 soll die default Sprache (deutsch) sein ###
config.linkVars = L
#values for default language
config.htmlTag_langKey = en_US
config.sys_language_uid = 1
config.language = en
config.locale_all = en_US
temp.languageSwitch = COA
temp.languageSwitch{
10 = IMAGE
10.file = fileadmin/templates/img/de.gif
10.altText = HfWU deutsche Startseite
10.titleText = HfWU deutsche Startseite
10.stdWrap.typolink.parameter = 203
}
[global]
Auch hier die Standard Einstellungen nicht vergessen...
# languageMenu nutzt ein Skript um die jeweilige Seite
# in anderen Sprachen auszugeben
############################################################
#multilanguage-flags
temp.languageMenu = PHP_SCRIPT
temp.languageMenu.file = {$languageMenuScript}
# Englisch, sys_language.uid = 1
[globalVar = GP:L = 1]
config.sys_language_uid = 1
config.language = en
config.locale_all = en_US
# Link to top
#content.linkToTop >
#tt_content.stdWrap.innerWrap2 = <br><div align="right"><A href="#top"><font color="#AB3C4B" face="Arial, Helvetica, sans-serif" size="1"><B>to top</b></font></a></div>
#Suchfunktion - englisch
/*
tt_content.search{
20.layout.10.value = Suchergebnis: ###RANGELOW###-###RANGEHIGH### von ###TOTAL###
20.noResultObj.10.value = No hits.
20.next.value=next
20.prev.value=previous
30.dataArray.10.label = Searchwords:
30.dataArray.20.label = Search in:
30.dataArray.20.valueArray.10.label = Headlines & Keywords
30.dataArray.20.valueArray.20.label = Content
30.dataArray.40.value = Start search
}
*/
[global]
# French language, sys_language.uid = 2
[globalVar = GP:L = 2]
config.sys_language_uid = 2
config.language = fr
config.locale_all = fr_FR
[global]
Beispiele für Sprachumschalter..
Multitree TS Umschalter (D-E)
Es wird immer nur eine Flagge gezeigt.
temp.navi_lang = COA
temp.navi_lang.wrap = <div class="serviceNavi"> | </div>
temp.navi_lang.30 = IMAGE
[PIDinRootline = 192]
temp.navi_lang.30{
file = typo3conf/ext/syslanguage_flags/gfx/de.gif
altText = www.grauff.com - deutsche Version
titleText = www.grauff.com - deutsche Version
stdWrap.typolink.parameter = 262
}
[global]
[PIDinRootline = 193]
temp.navi_lang.30{
file = typo3conf/ext/syslanguage_flags/gfx/uk.gif
altText = www.grauff.com - english Version
titleText = www.grauff.com - english Version
stdWrap.typolink.parameter = 261
}
[global]
Auswahl für Multitreemenu TS - mit Home und Print Button
Könnte vereinfacht werden, so ist es aber sehr übersichtlich
Beide Flaggen werden gezeigt:
// Service Navigation:
temp.navi_lang = COA
temp.navi_lang.wrap = <div class="serviceNavi"> | </div>
temp.navi_lang.30 = IMAGE
temp.navi_lang.30{
file = typo3conf/ext/syslanguage_flags/gfx/de.gif
altText = www.grauff.com - deutsche Version
titleText = www.grauff.com - deutsche Version
stdWrap.typolink.parameter = 262
}
temp.navi_lang.35 = IMAGE
temp.navi_lang.35{
file = typo3conf/ext/syslanguage_flags/gfx/uk.gif
altText = www.grauff.com - english Version
titleText = www.grauff.com - english Version
stdWrap.typolink.parameter = 261
}
temp.navi_lang.40 = COA
temp.navi_lang.40.5 = IMAGE
#deutscher Seitenbaum
[PIDinRootline = 193]
temp.navi_lang.40.5{
file = fileadmin/Bilder/printer.gif
altText = Seite drucken
titleText = Seite drucken
wrap = <a href="#" onclick="javascript:window.print()" target="blank">|</a>
}
[else]
temp.navi_lang.40.5{
file = fileadmin/Bilder/printer.gif
altText = Print page
titleText = Print page
wrap = <a href="#" onclick="javascript:window.print()" target="blank">|</a>
}
[global]
temp.navi_lang.40.7 = IMAGE
# englischer SEitenbaum
[PIDinRootline = 192]
temp.navi_lang.40.7{
file = fileadmin/grauff/media/home.gif
altText = Home
titleText = Home
#wrap = <a href="http://www.grauff.com" target="_top">|</a>
stdWrap.typolink.parameter = 261
}
[global]
[PIDinRootline = 193]
temp.navi_lang.40.7{
file = fileadmin/grauff/media/home.gif
altText = Home
titleText = Home
#wrap = <a href="http://www.grauff.com" target="_top">|</a>
stdWrap.typolink.parameter = 262
}
[global]
Siehe auch TypoScript - Service Navigation