Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Caching 用locallang.xlf翻译Extbase扩展,但什么都没发生?_Caching_Typo3_Translate_Extbase - Fatal编程技术网

Caching 用locallang.xlf翻译Extbase扩展,但什么都没发生?

Caching 用locallang.xlf翻译Extbase扩展,但什么都没发生?,caching,typo3,translate,extbase,Caching,Typo3,Translate,Extbase,我使用的是TYPO3 CMS 6.2.6和一个新的奇妙的Extbase扩展,名为jobfair。 我添加了新的TemplateRootPath,如下所示: plugin.tx_jobfair { view { templateRootPaths { 100 = EXT:jobfair/Resources/Private/Templates/ 101 = fileadmin/templates/ext/jobfair/Resources

我使用的是TYPO3 CMS 6.2.6和一个新的奇妙的Extbase扩展,名为jobfair。 我添加了新的TemplateRootPath,如下所示:

plugin.tx_jobfair {

  view {
        templateRootPaths {
          100 = EXT:jobfair/Resources/Private/Templates/
          101 = fileadmin/templates/ext/jobfair/Resources/Private/Templates/
        }

        partialRootPaths {
          100 = EXT:jobfair/Resources/Private/Partials/
          101 = fileadmin/templates/ext/jobfair/Resources/Private/Partials/
       }

       layoutRootPaths {
          100 = EXT:jobfair/Resources/Private/Layouts/
          101 = fileadmin/templates/ext/jobfair/Resources/Private/Layouts/
       }
  }

}
...
因此,我可以编辑我的特定设计的模板和部分。所有其他模板将从/typo3conf/ext/jobfair/Resources/…加载

一切正常。我还将语言文件夹从扩展名typo3conf复制到我的fileadmn文件夹fileadmin/../jobfair/Resources/Private/language/

我编辑locallang.xlf和de.locallang.xlf,例如:

部分:ContractType.html

<f:if condition="{job.contractType} == 0">
 <f:translate key="tx_jobfair_domain_model_job.contract_type.0" />
</f:if>
我将在de.locallang.xlf处更改目标

<trans-unit id="tx_jobfair_domain_model_job.contract_type">
<source>Contract Type</source>
<target>Here's my german translation!!!</target>
</trans-unit>
但它不起作用

如何翻译或重命名ext的后端flexformlabels。?de.locallang.xlf不是正确的文件吗

谢谢你的帮助。 p、 我清除了TYPO3中的任何缓存。。什么也没发生

这是我的文件系统

我对FLUIDTEMPLATE使用相同的方法


模板和语言处理是TYPO3中的独立组件。因此,覆盖原始语言的模板文件无法知道您将语言文件复制到了其他地方。你有几个选择

为了记录在案,使用打字稿可以轻松地覆盖前端的标签:

plugin.tx_yourext._LOCAL_LANG.[languageKey] {
    labelKey = New label text
}
默认语言具有默认的als语言键

在后端,您可以使用Page TSConfig覆盖TCA和FlexForm标签:

# TCA
TCEFORM.tt_content.layout.label = New label

# FlexForm field
TCEFORM.tt_content.pi_flexform.[ext_key].[sheet_key].[field_key].label = New label

# Example for Powermail
TCEFORM.tt_content.pi_flexform.powermail_pi1 {
    main {
        settings\.flexform\.main\.optin.label = Require opt-in for mails
    }
}
请注意Powermail示例中的反斜杠。相应的字段称为settings.flexform.main.optin。由于点通常是路径分隔符,因此必须对其进行转义才能使其工作

除了这种配置方式之外,还有一种完全不同的方法。您可以覆盖整个翻译文件:

# Override XLF for default language
$GLOBALS['TYPO3_CONF_VARS']['SYS']['locallangXMLOverride']['path/to/originalTranslationFile.xlf'][]
    = 'path/to/otherTranslationFile.xlf';
# Override XLF for French language
$GLOBALS['TYPO3_CONF_VARS']['SYS']['locallangXMLOverride']['fr']
    ['path/to/originalTranslationFile.xlf'][] = 'other/path/to/fr.otherTranslationFile.xlf';

可以找到有关此主题的更多信息。

模板和语言处理是TYPO3中的独立组件。因此,覆盖原始语言的模板文件无法知道您将语言文件复制到了其他地方。你有几个选择

为了记录在案,使用打字稿可以轻松地覆盖前端的标签:

plugin.tx_yourext._LOCAL_LANG.[languageKey] {
    labelKey = New label text
}
默认语言具有默认的als语言键

在后端,您可以使用Page TSConfig覆盖TCA和FlexForm标签:

# TCA
TCEFORM.tt_content.layout.label = New label

# FlexForm field
TCEFORM.tt_content.pi_flexform.[ext_key].[sheet_key].[field_key].label = New label

# Example for Powermail
TCEFORM.tt_content.pi_flexform.powermail_pi1 {
    main {
        settings\.flexform\.main\.optin.label = Require opt-in for mails
    }
}
请注意Powermail示例中的反斜杠。相应的字段称为settings.flexform.main.optin。由于点通常是路径分隔符,因此必须对其进行转义才能使其工作

除了这种配置方式之外,还有一种完全不同的方法。您可以覆盖整个翻译文件:

# Override XLF for default language
$GLOBALS['TYPO3_CONF_VARS']['SYS']['locallangXMLOverride']['path/to/originalTranslationFile.xlf'][]
    = 'path/to/otherTranslationFile.xlf';
# Override XLF for French language
$GLOBALS['TYPO3_CONF_VARS']['SYS']['locallangXMLOverride']['fr']
    ['path/to/originalTranslationFile.xlf'][] = 'other/path/to/fr.otherTranslationFile.xlf';

可以找到有关此主题的更多信息。

完美。洛伦兹,非常感谢你的详细解释。现在我明白了,我会看到更大的图景

我只需要该项目中的后端翻译,如:

TCEFORM.tx_jobfair_domain_model_job {
   ## disable flexform/tca fields
   salary.disabled = 1
   discipline.disabled = 1
   education.disabled = 1


   # rename or translate
   job_title.label = Stelle
   employer.label = Arbeitgeber
   employer_description.label = Arbeitgeberbeschreibung

}
但我也对前端视图进行了测试:

plugin.tx_jobfair._LOCAL_LANG.de {
    tx_jobfair_domain_model_job.contract_type = Vertragsart
}
工作完美!
多谢各位

完美。洛伦兹,非常感谢你的详细解释。现在我明白了,我会看到更大的图景

我只需要该项目中的后端翻译,如:

TCEFORM.tx_jobfair_domain_model_job {
   ## disable flexform/tca fields
   salary.disabled = 1
   discipline.disabled = 1
   education.disabled = 1


   # rename or translate
   job_title.label = Stelle
   employer.label = Arbeitgeber
   employer_description.label = Arbeitgeberbeschreibung

}
但我也对前端视图进行了测试:

plugin.tx_jobfair._LOCAL_LANG.de {
    tx_jobfair_domain_model_job.contract_type = Vertragsart
}
工作完美! 多谢各位