【发布时间】:2013-11-17 10:44:26
【问题描述】:
按预期切换字体语言对我不起作用。到目前为止我做了什么:
在根页面,我创建了两种网站语言,德语和英语:
在我添加了以下设置的打字稿模板中,我发现大部分内容散布在网络上:
config {
tx_realurl_enable = 1
simulateStaticDocuments = 0
sys_language_uid = 0
language = de
locale_all = de_DE
htmlTag_langKey = de
linkVars := addToList(L)
uniqueLinkVars = 1
sys_language_mode = content_fallback
sys_language_overlay = 1
}
[globalVar = GP:L = 0]
config.sys_language_uid = 0
config.language = de
config.locale_all = de_DE
config.htmlTag_langKey = de
[global]
[globalVar = GP:L = 2]
config.sys_language_uid = 1
config.language = en
config.locale_all = en_EN
config.htmlTag_langKey = en
[global]
在一个页面上,我为该页面创建了一个新的翻译并添加了一些内容。
左边是标准语言(在本例中为德语),填充了 lorem ipsum。右边是新的语言(英语),填充了一些不同的内容,只是为了看看效果。
现在,当我点击英文栏上方的小预览图标时,它会将我带到index.php?id=3&L=2,这表示添加了L=2。但是网站上的内容仍然是标准(德语/lorem ipsum)内容。我哪里做错了?
另外:我在前端添加了一个菜单让用户在语言之间切换:
languageMenu = HMENU
languageMenu {
special = language
special.value = 0,2
1 = TMENU
1 {
wrap = <ul id="language"> | </ul>
NO = 1
NO {
wrapItemAndSub = <li> | </li>
stdWrap.override = deutsch || english
}
ACT < .NO
ACT {
ATagParams = class="active"
}
}
}
与 realurl 结合,会产生这样的 url:
德语:/startseite/
英文:/2/home/
- 语言是否可以使用
de和en等参数代替数字? - 如何确保网址始终包含德语或英语参数?
- 在
/startseite/上时,相应的链接将获得class="active",但在/2/home/上,没有链接被标记为活动的。怎么解决?
TYPO3 和多语言似乎是一个令人困惑的话题,我希望你们中的一些人能回答我的一些问题。提前致谢!
编辑:感谢丹尼尔找到了解决方案。
这里是为了以防其他人有同样的问题:
设置:
config {
tx_realurl_enable = 1
simulateStaticDocuments = 0
sys_language_uid = 0
language = de
locale_all = de_DE
htmlTag_langKey = de
linkVars := addToList(L)
uniqueLinkVars = 1
sys_language_mode = content_fallback
sys_language_overlay = 1
}
[globalVar = GP:L = 0]
config.sys_language_uid = 0
config.language = de
config.locale_all = de_DE
config.htmlTag_langKey = de
[global]
[globalVar = GP:L = 2]
config.sys_language_uid = 2
config.language = en
config.locale_all = en_EN
config.htmlTag_langKey = en
[global]
[...]
languageMenu = HMENU
languageMenu {
special = language
special.value = 0,2
1 = TMENU
1 {
wrap = <ul id="language"> | </ul>
NO = 1
NO {
wrapItemAndSub = <li> | </li>
stdWrap.override = deutsch || english
}
ACT < .NO
ACT {
ATagParams = class="active"
}
}
}
RealUrl 配置:
'preVars' =>
array(
0 =>
array(
'GETvar' => 'L',
'valueMap' =>
array(
'de' => '0',
'en' => '2',
),
'valueDefault' => 'de'
),
),
【问题讨论】:
-
感谢 qus。我有同样的问题。但我仍然不知道“realURL”是否要添加这些代码。因为我是typo3的新手。请告诉我如何添加它。谢谢。
标签: internationalization typo3