【问题标题】:How do I suppress FAL fields in CEs for the editor?如何为编辑器抑制 CE 中的 FAL 字段?
【发布时间】:2018-12-10 09:59:22
【问题描述】:

我开发了一个使用图像的内容元素。因为它将图像输出为内联样式元素:<div style="/fileadmin/_processed_/2/a/csm_article-image-1.4_a50d0b1375.jpg">[..]</div>,所以我想为编辑器的 CE 抑制 FAL 字段 alttitledescription

示例: screenshot

目前我使用以下 TypoScript:

TCEFORM {
    sys_file_reference {
        alternative.disabled = 1
        description.disabled = 1
        title.disabled = 1
        link.disabled = 1
    }

}

但是这个解决方案强制所有 CE 隐藏 file.metadata。

TCA 配置是什么样的?

编辑: @rudy-gnodde 的解决方案完美无缺:

$GLOBALS['TCA']['tt_content']['types']['ce_image']['columnsOverrides']['image']['config']['overrideChildTca']['types'][0]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['types']['ce_image']['columnsOverrides']['image']['config']['overrideChildTca']['types'][1]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['types']['ce_image']['columnsOverrides']['image']['config']['overrideChildTca']['types'][2]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['types']['ce_image']['columnsOverrides']['image']['config']['overrideChildTca']['types'][3]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['types']['ce_image']['columnsOverrides']['image']['config']['overrideChildTca']['types'][4]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['types']['ce_image']['columnsOverrides']['image']['config']['overrideChildTca']['types'][5]['showitem'] = 'crop,--palette--;;filePalette';

【问题讨论】:

  • 由于 Rudy Gnoddy 的回答对您有所帮助,您可以将其选择为“已接受”,而不是将他的代码建议复制到您的问题中。
  • 您在“接受”之后的评论感觉有点冒犯。我不只是复制他的解决方案。我根据 Rudy 的回答发布了我的问题的代码。
  • 我不想冒犯你——你的代码标题(“[...] 完美无瑕:”)给我的印象是它只是被复制的。对不起归责。我只是想指出,通过相应地标记有用的答案来表示对受访者的感谢是公平的。

标签: typo3 fal


【解决方案1】:

如果您使用现有的 image 字段,您可以覆盖它应该显示的字段:

$GLOBALS['TCA']['tt_content']['columns']['image']['config']['overrideChildTca']['types'][0]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['columns']['image']['config']['overrideChildTca']['types'][1]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['columns']['image']['config']['overrideChildTca']['types'][2]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['columns']['image']['config']['overrideChildTca']['types'][3]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['columns']['image']['config']['overrideChildTca']['types'][4]['showitem'] = 'crop,--palette--;;filePalette';
$GLOBALS['TCA']['tt_content']['columns']['image']['config']['overrideChildTca']['types'][5]['showitem'] = 'crop,--palette--;;filePalette';

如果是自定义字段,您应该将overrideChildTca 中的部分添加到该字段的 TCA 配置的配置中。

这只会显示Image manipulation 字段。

【讨论】:

    【解决方案2】:

    您应该使用“assets”字段而不是“image”字段,assets 字段将为您提供所有数据,例如“title、link、alt 等”

    【讨论】:

    • 感谢您的回答。我希望编辑器能够在 BE 中选择图像。但标题、替代和描述等无用字段不应显示在后端。
    • 是的,如果你选择“文件”,那么你可以得到所有这样的字段:prnt.sc/lt1exe
    • 我不想显示元数据,我想隐藏它们。我添加了一个屏幕截图。
    • 如果你想从整个站点中删除它,那么 TCEFORM.sys_file_reference.link.disabled=1 TCEFORM.sys_file_reference.alternative.disabled=1 TCEFORM.sys_file_reference.description.disabled=1 TCEFORM.sys_file_reference。 title.disabled=1 TCEFORM.sys_file_reference.description.disabled=1
    猜你喜欢
    • 2019-04-30
    • 1970-01-01
    • 2018-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多