typo3 templavoila检查当前语言

typo3 templavoila检查当前语言,typo3,typoscript,templavoila,Typo3,Typoscript,Templavoila,嗨,我有4种语言在我的打字错误。以下是我对它们的主要配置: #LANGS config.linkVars=L config.defaultGetVars.L = 0 config.sys_language_overlay = hideNonTranslated [globalVar = GP:L = 3] config.sys_language_uid = 3 config.language = en config.locale_all = en_EN config.htmlTag_langKe

嗨,我有4种语言在我的打字错误。以下是我对它们的主要配置:

#LANGS
config.linkVars=L
config.defaultGetVars.L = 0
config.sys_language_overlay = hideNonTranslated
[globalVar = GP:L = 3]
config.sys_language_uid = 3
config.language = en
config.locale_all = en_EN
config.htmlTag_langKey = en
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 3
[globalVar = GP:L = 2]
config.sys_language_uid = 2
config.language = ro
config.locale_all = ro_RO
config.htmlTag_langKey = ro
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 2
[globalVar = GP:L = 1]
config.sys_language_uid = 1
config.language = de
config.locale_all = de_DE
config.htmlTag_langKey = de
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 1
[global]
一切正常。 我使用templavoila和realurl

在其中一个模板/模块/灵活内容中,只有当其不为空时,我才有typoscript显示字段:

10 = TEXT
10.field = field_test
10.wrap = info: |
10.if.isTrue.field = field_test
现在我想以不同的版本显示此字段:

比如:

对于DE语言等


如何在这里检查当前语言是什么?

使用打字稿中的翻译标签

您可以在打字稿中使用翻译标签。例如:

{LLL:typo3conf/customlabels.xlf:label.id}
{LLL:EXT:mytemplateext/Resources/Private/Language/locallang.xlf:label.id}
#LANGS
config.linkVars=L
config.defaultGetVars.L = 0
config.sys_language_overlay = hideNonTranslated
myLanguageLabels {
    info = info
}
[globalVar = GP:L = 3]
config.sys_language_uid = 3
config.language = en
config.locale_all = en_EN
config.htmlTag_langKey = en
myLanguageLabels {
    info = info 2
}
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 3
[globalVar = GP:L = 2]
config.sys_language_uid = 2
config.language = ro
config.locale_all = ro_RO
config.htmlTag_langKey = ro
myLanguageLabels {
    info = info 3
}
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 2
[globalVar = GP:L = 1]
config.sys_language_uid = 1
config.language = de
config.locale_all = de_DE
config.htmlTag_langKey = de
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 1
myLanguageLabels {
    info = info 3
}
[global]
您可能想看看:

llXML文件是包含标签的XML文件,如果安装了语言包,系统可以在本地化版本中获取这些标签。如果要从TypoScript中的llXML文件中检索值,可以按如下方式执行:

另见:

键入脚本变量

您可以使用自己的设置扩展语言配置。例如:

{LLL:typo3conf/customlabels.xlf:label.id}
{LLL:EXT:mytemplateext/Resources/Private/Language/locallang.xlf:label.id}
#LANGS
config.linkVars=L
config.defaultGetVars.L = 0
config.sys_language_overlay = hideNonTranslated
myLanguageLabels {
    info = info
}
[globalVar = GP:L = 3]
config.sys_language_uid = 3
config.language = en
config.locale_all = en_EN
config.htmlTag_langKey = en
myLanguageLabels {
    info = info 2
}
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 3
[globalVar = GP:L = 2]
config.sys_language_uid = 2
config.language = ro
config.locale_all = ro_RO
config.htmlTag_langKey = ro
myLanguageLabels {
    info = info 3
}
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 2
[globalVar = GP:L = 1]
config.sys_language_uid = 1
config.language = de
config.locale_all = de_DE
config.htmlTag_langKey = de
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 1
myLanguageLabels {
    info = info 3
}
[global]
然后指出要使用的变量:

10.wrap = {$myLanguageLabels.info}: |

是的,这是个不错的选择。但如果我有1000个标签,那就太乱了。。我在寻找更优雅的解决方案。我扩展了我的答案:)