如何覆盖 Typo3 7.6 版中的语言文件?

How to override language files in Typo3 version 7.6?

我真的需要知道如何从扩展中覆盖语言文件。例如,我安装了 powermail,并且我有一个来自该扩展名的语言文件需要覆盖。

所以我有一个名为 website_head 的扩展,我在其中创建了文件:

typo3conf\ext\website_head\Resources\Private\Language\Overrides\powermail\Resources\Private\Language\locallang.xlf

我要覆盖的文件是:

typo3conf\ext\powermail\Resources\Private\Language\locallang.xlf

当我清除缓存时它并没有改变(但是当我改变原件时它确实改变了文本,它只是没有覆盖)

这也是覆盖 locallang.xlf 文件中的内容:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<xliff version="1.0">
    <file source-language="en" datatype="plaintext" original="messages" date="2014-05-02T12:00:00Z" product-name="powermail">
        <header/>
        <body>
            <trans-unit id="validationerror_mandatory">
                <source>Custom text</source>
            </trans-unit>
        </body>
    </file>
</xliff>

看看https://docs.typo3.org/typo3cms/CoreApiReference/7.6/Internationalization/Translation/Index.html:

您可能需要:

1) 声明您的 XLF:

$GLOBALS['TYPO3_CONF_VARS']['SYS']['locallangXMLOverride']['EXT:powermail/Resources/Private/Language/locallang.xlf'][] = 'EXT:website_head/Resources/Private/Language/Overrides/powermail/Resources/Private/Language/custom.xlf';

2) 覆盖标签:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<xliff version="1.0">
     <file source-language="en" datatype="plaintext" original="messages" date="2013-03-09T18:44:59Z" product-name="website_head">
             <header/>
             <body>
                     <trans-unit id="validationerror_mandatory" xml:space="preserve">
                             <source>Custom text</source>
                     </trans-unit>
             </body>
     </file>
</xliff>