Typo3 CMS 8.7.15 //将搜索结果限制为当前语言

时间:2018-06-04 12:44:36

标签: typo3 typoscript multilingual

我使用TYPO3版本TYPO3 CMS 8.7.15。多语言设置。一切正常。德语是默认语言。其他配置的语言是英语,portugeese和中文。问题是,当我尝试使用与当前语言不同的语言搜索关键字时,我会从其他翻译中获得结果。我想要求正确的设置,以便从当前内容中仅显示当前语言的搜索结果。

config {
    linkVars = L
    uniqueLinkVars = 1
    sys_language_mode = content_fallback
    sys_language_overlay = 1
    sys_language_uid = 0
    locale_all = de_DE.UTF-8
    htmlTag_langKey = de
    language = de
}
plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 0


# SPRACHE: ENGLISCH
[globalVar = GP:L=6]
    config {
        sys_language_uid = 6
        language = en
        locale_all = en_GB.UTF-8
        htmlTag_setParams = en
    }

    pugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 6
[global]

# SPRACHE: PORTUGIESISCH
[globalVar = GP:L=7]
    config {
        sys_language_uid = 7
        language = pt
        locale_all = pt_PT.UTF-8
        htmlTag_setParams = pt
    }

    plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 7
[global]

# SPRACHE: CHINESISCH (EINFACH)
[globalVar = GP:L=8]
    config {
        sys_language_uid = 8
        language = zh
        locale_all = zh_CN.UTF-8
        htmlTag_setParams = zh
    }

    plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 8
[global]

正确配置它的唯一方法是plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang变量。但这对我的搜索结果没有影响。我的配置有什么问题?

1 个答案:

答案 0 :(得分:0)

如果您将搜索字段放入菜单(例如,flowtemplate),则<f:form.hidden name="search[languageUid]"未填充。所以结果显示了所有语言。

我通过使用lib帮助自己,它提供了当前语言。

流体:

<f:form.hidden name="search[languageUid]" value="{f:cObject(typoscriptObjectPath: 'lib.language')}" />

Typoscript设置:

# German language
temp.language = TEXT
temp.language.value = 0

# English language
[globalVar = GP:L = 1]
    temp.language.value = 1
[global]

lib.language < temp.language