【问题标题】:Typo3 with extbase - get translation for specific language带有 extbase 的 Typo3 - 获取特定语言的翻译
【发布时间】:2015-11-16 15:50:17
【问题描述】:

我写了一个后端钩子,这样我就可以在typo3中将项目设置为hidden = 0时立即编写通知电子邮件。我设法访问 LocalizationUtility 来访问我的翻译文件,如下所示:

$localization = $objectManager->get('\TYPO3\CMS\Extbase\Utility\LocalizationUtility');
$localization::translate('tx_extplugin_domain_model_item.email.text1', 'ExtPlugin')

但是我如何定义要使用的语言呢?翻译功能似乎没有语言参数,那么如何获取不同语言的文本?

提前致谢!

【问题讨论】:

    标签: php typo3 extbase


    【解决方案1】:

    您可以使用 readLLfile 方法通过语言键获取特定的翻译。这将返回 $file 中所有已翻译字符串的数组。

    $fd = GeneralUtility::readLLfile($file, $langKey);

    【讨论】:

    • 天哪,谢谢!这就像一个魅力!完美的!我打电话给 GeneralUtility::readLLFile('EXT:pgk_extensionname/Resources/Private/Language/locallang.xlf', 'en') 我得到了一个带有 vfalues 的数组!
    【解决方案2】:

    您不能以这种方式使用 Typo3 翻译 - Typo3 将始终翻译到 当前 语言范围。

    根据this answer,我认为您可以做到的唯一方法是将您的翻译保存在 Typo3 之外(以数组或类似形式),然后自己进行翻译,而不是使用内置的 Typo3。

    【讨论】:

    • 好吧,这太糟糕了。但是非常感谢您的回答,至少现在我知道这是不可能的,我可以停止尝试了。
    猜你喜欢
    • 2015-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-11
    • 1970-01-01
    • 1970-01-01
    • 2013-03-10
    相关资源
    最近更新 更多