TYPO3 | Frontend Sprachwechsler realURL konform nur mit TypoScript
In meinem Beispiel ist die Standard Sprache Deutsch und die zusätzliche Sprache Englisch.
Im TYPO3 Backend legt ihr eure zusätzliche Sprache an. Die Standard Sprache hat die ID0 und die zusätzliche bekommt die ID1.
Mittels TypoScript definiert ihr wie TYPO3 mit diesen umzugehen hat.
# Standard Sprache
config {
linkVars = L
sys_language_uid = 0
language = de
locale_all = de_DE.UTF8
htmlTag_langKey = de
}
# Zusätzliche Sprache
[globalVar = GP:L = 1]
config {
sys_language_uid = 1
language = en
locale_all = en_EN
htmlTag_langKey = en
}
[global]
Den Sprachwechsler erstellt ihr mit folgendem Code-Snippet
lib.langNav = COA
lib.langNav {
10 = HMENU
10 {
special = language
special.value = 0,1
1 = TMENU
1 {
wrap = <ul class="lang-menu">|</ul>
NO = 1
NO {
stdWrap.cObject = TEXT
stdWrap.cObject {
value = DE || EN
}
allWrap =<li>|</li>
}
# Mehrsprachigkeitwechsel News Detailseite
NO.stdWrap.typolink.parameter.data = page:uid
NO.stdWrap.typolink.additionalParams = &L=0||&L=1
NO.stdWrap.typolink.addQueryString = 1
NO.stdWrap.typolink.addQueryString.method = GET
NO.stdWrap.typolink.useCacheHash = 0
NO.stdWrap.typolink.no_cache = 0
ACT < .NO
ACT {
doNotLinkIt = 1
allWrap = <li class="active">|</li>
}
USERDEF1 < .NO
USERDEF1 {
doNotLinkIt = 1
allWrap = <li>|</li>
}
USERDEF2 < .NO
USERDEF2 {
doNotLinkIt = 1
allWrap = <li>|</li>
}
}
}
}
Mit folgendem Fluid-Marker kann das Menü an der gewünschten Position angezeigt werden.
<f:cObject typoscriptObjectPath="lib.langNav" />
Getestet mit TYPO3 Version 7.6.19
Weitere Beiträge
10 KI-Tools, die dir täglich Zeit sparen können – besonders als Entwickler
OXID 6 | Modul erstellen mit Namespaces und Composer
Eigenes Inhaltselement für TYPO3 7.6.x - 9.5.x
Wordpress | Nutze Shortcode für Anzeige von Beiträgen einer Kategorie