我正在设置Typo3网站,默认语言为英语,德语翻译(id = 1)。
但是,在德语翻译中,我需要能够在“默认”列中创建默认情况下不存在的其他内容元素。
但是,每当我尝试创建新的内容元素时,它们都会显示在BE中,但在前端它只会呈现使用“复制默认”按钮创建的内容。
这是我的配置:
config.linkVars = L
config.uniqueLinkVars = 1
config.sys_language_overlay = default
config.sys_language_mode = content_overlay
config.language = en
config.locale_all = en_EN
config.htmlTag_langKey = en-EN
config.sys_language_uid = 0
[browser = msie]
config.htmlTag_setParams = xmlns="http://www.w3.org/1999/xhtml" xmlns:v=”urn:schemas-microsoft-com:vml” xml:lang="en"
[globalVar = GP:L = 1]
config.language = de
config.locale_all = de_DE
config.htmlTag_langKey = de-DE
config.sys_language_uid = 1
[globalVar = GP:L = 1] && [browser = msie]
config.htmlTag_setParams = xmlns="http://www.w3.org/1999/xhtml" xmlns:v=”urn:schemas-microsoft-com:vml” xml:lang="de"
[global]
我复制了2个默认元素,然后尝试添加其他未渲染的元素。
之前我没有使用过TYPO3,但我很确定应该渲染那些额外的内容元素?我是否需要在模板中包含任何其他标记才能启用它?
答案 0 :(得分:3)
试试这个:
config.sys_language_overlay = hideNonTranslated
config.sys_language_mode = strict
[globalVar = GP:L = 1]
config.sys_language_overlay = 0
[end]
通过设置config.sys_language_overlay = 0
,即使没有默认语言的记录,TYPO3也应显示您的德语记录。
我还更正了config.sys_language_overlay
和config.sys_language_mode
的默认值,因为它们无效。
可以在TSREF找到文档。
答案 1 :(得分:3)
为未来的访客回答我自己的问题......
当你设置config.sys_language_overlay时,它会告诉Typo3实际上从默认语言中获取所有记录,然后只是将匹配叠加在顶部 - 这样,它只会显示已经从默认语言中下载的翻译元素
完全按照它完成后,它允许您在翻译中使用尽可能多的内容元素,而无需关注默认语言。
正如@Shufla所提到的,使用config.sys_language_mode = strict则意味着任何 less 元素的翻译都不会继承默认语言。