【问题标题】:In TYPO3 6.1, how to use header_layout from standard language only?在 TYPO3 6.1 中,如何仅使用标准语言的 header_layout?
【发布时间】:2014-03-24 11:00:08
【问题描述】:

我使用header_layout 字段用css 类包装内容元素。

tt_content.text.stdWrap.outerWrap.cObject=CASE
tt_content.text.stdWrap.outerWrap.cObject{
    key.field = header_layout
    default=TEXT
    default.value=|
    1=TEXT
    1.value=<aside class="box clearfix">|</aside>
}  

现在,选择仅适用于默认语言,而不适用于本地化。

如何告诉 TYPO3 仅查看标准语言 (0) 中的 header_layout 字段,以及如何在本地化中隐藏该字段?

而且:显然,使用 header_layout 是一种经常使用的解决方法。 TYPO3 >= 6.0 中是否有专为此用途设计的字段(将自定义 TS 分配给单个内容元素)?

【问题讨论】:

  • 你可以使用[globalVar = GP:L = 0]...code...[GLOBAL]
  • 我想一直使用默认语言字段,所以反过来,我看不到某个条件的用途

标签: typo3 typoscript typo3-6.1.x tsconfig


【解决方案1】:

要使用默认的其他 HTML 包装内容元素,您可以使用外观选项卡的框架和缩进下拉菜单。

您通过 PageTSConfig 添加条目:

TCEFORM.tt_content{
    section_frame {
        addItems {
            100 = My new Frame
        }
    }
}

并在 TypoScript 中定义相应的渲染:

tt_content.stdWrap.innerWrap.cObject = CASE
tt_content.stdWrap.innerWrap.cObject {
    key.field = section_frame
    100 < .66
    100.30.value = <div class="my-css-class">|</div>
}

至于如何将其从本地化中排除,我不太确定。如果您的本地化记录具有相同的框架,应该可以正常工作。

【讨论】:

  • 这与使用 header_layout 的原理相同 - 它只是您使用的不同的废弃字段。此外,正确的本地化使用是我的问题/问题的本质
  • “基本”不是 essention :-)
  • 没错,但我觉得框架是更合适的地方。无论如何,您是否考虑过使用流体内容并为您的包装器创建一个流体内容元素,插入正常的内容元素并翻译 ist。这样您就可以为每种语言使用相同的包装器,并且不需要使用 section_frame 或 header_layout?
  • 我将改用flux,但现在我正在寻找一种非扩展的、强大的、普通的解决方案
【解决方案2】:

我不确定 TypoScript 是否支持它,但您可以在 header_layout 字段上使用 l10n_mode exclude:

$TCA['tt_content']['columns']['header_layout']['l10n_mode'] = 'exclude';
$TCA['tt_content']['columns']['header_layout']['l10n_display'] = 'defaultAsReadOnly';

这会从翻译中排除该字段,并在本地化版本中将其显示为只读。

在此处查看所有选项:http://docs.typo3.org/typo3cms/TCAReference/Reference/Columns/Index.html#l10n-mode

正如最初所说,这是未经测试的 - 我不知道它是否适用于 TypoScript 上下文。

【讨论】:

  • 感谢 Lorenz,我尝试将其添加到 AdditionalConfiguration.php(当然是为了测试),或者以 $GLOBALS['TCA']$TCA 开头。但是,它不会将字段隐藏在后端,没有运气。
  • 之后你清除配置缓存了吗?这可能在 TS 中没有效果,但它必须在 TCEFORM 中工作。
  • 是的,ext:uncache 也在运行。 (抱歉),在 AdditionalConfiguration.php、$GLOBALS['TCA'] 或 $TCA 中的正确输入方式是什么?
  • 正确的方法是使用 extTables 脚本。 AdditionalConfiguration 仅用于特定于环境的配置(例如,用于开发的不同数据库凭据)。 “extTablesDefinitionScript”在 LocalConfiguration.php 中定义。
  • 我明白了,我已将它添加到/typo3conf/extTables.php,它在LocalConfiguration.php 中定义。在这两种方式中,无论有没有 $GLOBALS - 不幸的是,后端没有反应
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-10
  • 2018-03-12
相关资源
最近更新 更多