如何在使用 flexforms 的自定义 CType 中通过 TCA 覆盖列
How to override column through TCA in custom CType that uses flexforms
我试图在我的自定义 CType 中覆盖 sys_file_reference 的作物字段标签。这是我目前所拥有的(添加到 myext/Configuration/TCA/Overrides/sys_file_reference.php):
(function () {
if (is_array($GLOBALS['TCA']['tt_content']['types']['mytype'])) {
$GLOBALS['TCA']['tt_content']['types']['mytype']['columnsOverrides'] = [
'myfield' => [
'config' => [
'overrideChildTca' => [
'columns' => [
'crop' => [
'label' => 'XXX',
],
],
],
],
],
];
} })();
我很确定这应该有效,因为我验证它确实适用于文本媒体,但它不适用于我的自定义 CType。我错过了什么吗?难道 CType 是通过 flux 生成的,因此字段处于 flexform 中吗?也许这需要不同的方法?
谢谢
感谢 @Julian Hofmann 询问是否可以在 TCA 覆盖后生成 CType,我考虑将 overrideChildTca 移动到通量配置本身:
<flux:field.inline.fal name="myField"
config="{
overrideChildTca: {
columns: {
description: {
config: {
type: 'passthrough'
} } } } }" />
'passthrough' 隐藏字段。
我试图在我的自定义 CType 中覆盖 sys_file_reference 的作物字段标签。这是我目前所拥有的(添加到 myext/Configuration/TCA/Overrides/sys_file_reference.php):
(function () {
if (is_array($GLOBALS['TCA']['tt_content']['types']['mytype'])) {
$GLOBALS['TCA']['tt_content']['types']['mytype']['columnsOverrides'] = [
'myfield' => [
'config' => [
'overrideChildTca' => [
'columns' => [
'crop' => [
'label' => 'XXX',
],
],
],
],
],
];
} })();
我很确定这应该有效,因为我验证它确实适用于文本媒体,但它不适用于我的自定义 CType。我错过了什么吗?难道 CType 是通过 flux 生成的,因此字段处于 flexform 中吗?也许这需要不同的方法?
谢谢
感谢 @Julian Hofmann 询问是否可以在 TCA 覆盖后生成 CType,我考虑将 overrideChildTca 移动到通量配置本身:
<flux:field.inline.fal name="myField"
config="{
overrideChildTca: {
columns: {
description: {
config: {
type: 'passthrough'
} } } } }" />
'passthrough' 隐藏字段。