使用自己的模板进行索引搜索的翻译

时间:2018-03-15 08:43:55

标签: typo3-8.x tx-indexed-search

我使用Typo3 8.7.11和扩展indexedSearch 8.7.11使用Fluid-Templates

我使用自己的流体模板为搜索和搜索结果表单创建了一个扩展。

现在我也想对这些模板使用我自己的翻译。所以我在myTemplateExt/Resources/Private/Language中创建了以下文件:

  • locallang.xlf(默认使用 - en - 语言)
  • de.locallang.xlf
  • fr.locallang.xlf
  • it.locallang.xlf

唉,翻译没有加载。

我发现我可以添加像

这样的翻译的整个路径
<f:translate key="LLL:EXT:myTemplateExt/Resources/Private/Language/locallang.xlf:sform.submit" />

但是只加载了locallang.xlf文件。所有其他语言都被忽略。

我还尝试将自己的变量添加到索引搜索TS设置中:

plugin.tx_indexedsearch.settings.langfile = EXT:myTemplateExt/Resources/Private/Language/locallang.xlf

当然失败了(很可能是因为我不能在TS中为另一个扩展定义我自己的设置-var?)

我如何使索引搜索扩展使用我自己的lang文件?

P.S。我在StackOverflow上找到了这个建议:

Typo3 Indexed Search Local_Lang path

但这不是我想要的 - 我需要更多的模板灵活性,因为我需要添加更多的文本,而不仅仅是索引搜索为他们提供的常规键(是的,客户,你知道;)

1 个答案:

答案 0 :(得分:0)

这可能不是最好的解决方案,但我解决了这个问题:

我根据当前语言设置变量:

<v:variable.set name="currentLang" value="{v:page.language(languages: 'LLL:EXT:myExt/Resources/Private/Language/de.locallang.xlf,
LLL:EXT:myExt/Resources/Private/Language/en.locallang.xlf,
LLL:EXT:myExt/Resources/Private/Language/fr.locallang.xlf,
LLL:EXT:myExt/Resources/Private/Language/it.locallang.xlf',
 normalWhenNoLanguage: 'LLL:EXT:myExt/Resources/Private/Language/de.locallang.xlf')}" />

然后翻译:

<f:form.submit name="search[submitButton]" value="{f:translate(key: '{currentLang}:sform.submit')}" id="tx-indexedsearch-searchbox-button-submit" class="tx-indexedsearch-searchbox-button" />

这不优雅,但有效......