以第二语言编辑发布日期

Edit Publish Date in second language

有些人可能知道其他语言的元素和页面的发布和过期日期问题。

以默认语言设置日期效果很好。我将元素复制到第二语言中。但是在那里,后端表单字段(开始时间/结束时间)被禁用,因此在某些日期不会启用或禁用任何内容。

我已经找到了一些东西(基本上是一个重新启用 BE 表单字段的脚本)

t3lib_div::loadTCA('tt_content');
unset($TCA['tt_content']['columns']['starttime']['l10n_display']);
unset($TCA['tt_content']['columns']['starttime']['l10n_mode']);
unset($TCA['tt_content']['columns']['endtime']['l10n_display']);
unset($TCA['tt_content']['columns']['endtime']['l10n_mode']);

这是很旧的,所以要么它不起作用,要么我将这些行添加到错误的文件中,因为 'typo3conf/extTables.php'(他们告诉我放置它们的文件)不再存在。

编辑: 因为有人要求,这里是我的语言设置 TS

### language config
config {
    linkVars = L
    uniqueLinkVars = 1
    sys_language_uid = 0
    language = default
    locale_all = de_DE.utf8
}

# Setting up the language variable "L" to be passed along with links
#config.linkVars = L
#config.sys_language_mode=content_fallback
#config.sys_language_overlay=hideNonTranslated

[globalVar = GP:L=3]
config {
    linkVars = L
    uniqueLinkVars = 1
    sys_language_uid = 3
    language = en
    locale_all = gb_UK
    htmlTag_langKey = en
}
[global]

翻译记录从默认语言继承这些字段,因此您无需手动设置其值(它们的l10n_modeexclude

l10n_display仅供预览使用,无需打开默认语言的记录即可查看开始和结束时间。

编辑: 取消注释行 config.sys_language_mode=content_fallback,否则它采用 non-default 语言“原样 " 不检查 parent 的设置。如果需要,您还可以设置回退顺序,请参阅说明:http://docs.typo3.org/typo3cms/TyposcriptReference/Setup/Config/Index.html#setup-config-sys-language-mode

最后,如果您只想显示已翻译的元素,请取消注释 config.sys_language_overlay=hideNonTranslated 行。

如果你想为不同的语言设置不同的发布日期,这个配置适用于 TYPO3 6.2:

// Enable starttime and endtime for non-default language
unset($GLOBALS['TCA']['tt_content']['columns']['starttime']['l10n_display']);
unset($GLOBALS['TCA']['tt_content']['columns']['starttime']['l10n_mode']);
unset($GLOBALS['TCA']['tt_content']['columns']['endtime']['l10n_display']);
unset($GLOBALS['TCA']['tt_content']['columns']['endtime']['l10n_mode']);
从 TYPO3 6.2 开始不再需要

t3lib_div::loadTCA('tt_content');,您应该使用 $GLOBALS['TCA'] 而不是 $TCA

只需将其放入 typo3conf/extTables.php

如果您还没有 extTables.php 文件,您可以创建一个新的 PHP 文件并在 LocalConfiguration 的 DB 部分引用它:

'DB' => array(
    'extTablesDefinitionScript' => 'extTables.php',
    [...]