我目前正在研究一個需要兩種語言的項目。例如德語(L = 0)和萊赫特德語(L = 1)。TYPO3多語言。當沒有翻譯時,URL返回默認值。如何?
我的目標是,當德語頁面上有翻譯可用時,會出現一個按鈕,並將用戶重定向到Leicht德語。迄今爲止它的效果非常好。
但是,如果您使用的是德語版Leicht,並且您想移動到另一個沒有Leicht德語翻譯的頁面,則通過單擊子菜單而不是按鈕本身,URL會保留在L = 1和它不會回到L = 0。
我想你在這個問題上的知識,因爲我用盡了想法。
這裏是我的代碼:
config {
linkVars = L(0-1)
uniqueLinkVars = 1
defaultGetVars.L = 0
sys_language_uid = 0
sys_language_overlay = 1
language = de
locale_all = de-DE
}
[globalVar = GP:L = 1]
config {
sys_language_uid = 1
language = leichte Sprache
locale_all = de_DE.UTF-8
htmlTag_setParams = lang="ls" dir="ltr" class="no-js" }
[global]
這是我的列表,當你點擊你重定向到LEICHT德國和向後的位置。
lib.language = COA
lib.language {
20 = HMENU
20 {
special = language
special.value = 0,1
special.normalWhenNoLanguage = 0
wrap = <ul class="languageMenu">|</ul>
1 = TMENU
1 {
noBlur = 1
NO = 1
NO {
linkWrap = <li>|</li>
stdWrap.override = Deutsch || Leichte Sprache
stdWrap {
typolink {
parameter.data = page:uid
additionalParams = &L=0 || &L=1
ATagParams = hreflang="de-DE" || hreflang="de-LS"
addQueryString = 1 addQueryString.exclude = L,id,cHash,no_cache
addQueryString.method = GET useCacheHash = 1
no_cache = 0
}
}
}
ACT < .NO
ACT.linkWrap = <li class="active">|</li>
USERDEF1 < .NO
USERDEF1 {
linkWrap = <li class="text-muted">|</li>
stdWrap.typolink >
}
}
}
}
這是當你點擊,並沒有翻譯可用它應該將用戶重定向到默認語言的子菜單(L = 0)
lib.subnav = HMENU
lib.subnav.entryLevel = 1
lib.subnav {
1 = TMENU
1 {
wrap = <ul class="side-nav">|</ul>
noBlur = 1
NO = 1
NO {
wrapItemAndSub = <li>|</li>
ATagTitle.field = title
typolink {
parameter.data = page:uid
additionalParams = &L=0 || &L=1
ATagParams = hreflang="de-DE" || hreflang="de-LS"
addQueryString = 1 addQueryString.exclude = L,id,cHash,no_cache
addQueryString.method = GET
useCacheHash = 1
no_cache = 0
}
}
ACT < .NO ACT {
ATagParams = class="active" wrapItemAndSub = <li class="active">|</li>
}
}
在這一點上我有沒有其他補充。如果您需要更多,請隨時詢問。
由於提前,
阿里斯
爲什麼你不在乎什麼網址說,這是行爲的TYPO3,除非另有說明,否則它保持爲L = 1,但如果沒有可用的翻譯,則使用默認語言... – webMan