Переопределение значений TCA в pageTS

Я хочу изменить метку записей tt_address при отображении в виде списка. Вместо "название" следует использовать значение поля "организация" в качестве метки по умолчанию. Я хотел бы добиться этого, переопределив TCA — если возможно — через TypoScript в pageTS. К сожалению, следующая попытка не дала желаемого эффекта:

TCEFORM {
    tt_address {
        ctrl {
            label = company
            label_alt = name, last_name, first_name
        }
    }
}

Вместо TCEFORM попробовал с TCADefaults, но это ничего не изменило. Какое определение было бы правильным для достижения этой цели?

Заранее спасибо!


person Pixelrocker    schedule 30.04.2019    source источник


Ответы (2)


Чтобы изменить отображаемые столбцы в модуле списка, вы должны переопределить TCA в своем собственном расширении. В файле EXT:xyz/Configuration/TCA/Overrides/tt_content.php

$GLOBALS['TCA']['tt_address']['ctrl']['label'] = 'company';
$GLOBALS['TCA']['tt_address']['ctrl']['label_alt'] = 'name, last_name, first_name';
person Heinz Schilling    schedule 03.05.2019

Вы должны использовать имя столбца, чтобы перезаписать метку. Форма TCEFORM.[tableName].[fieldName].[propertyName]

В вашем случае вы хотите перезаписать поле «имя».

TCEFORM.tt_address.name.label = Company

Дополнительные сведения см. на странице https://docs.typo3.org/typo3cms/TSconfigReference/PageTsconfig/TceForm.html

person Heinz Schilling    schedule 30.04.2019
comment
Спасибо за ваш ответ, но вы меня неправильно поняли. Я не хочу менять метку формы редактирования. Чего я пытаюсь добиться, так это изменить метки в представлении списка записей tt_address. - person Pixelrocker; 02.05.2019
comment
Прости. Создайте файл typo3conf/AdditionalConfiguration.php. Там попробуйте $GLOBALS['TCA']['tt_address']['ctrl']['label'] = 'company';и $GLOBALS['TCA']['tt_address']['ctrl']['label_alt'] = 'name, last_name, first_name'; - person Heinz Schilling; 02.05.2019
comment
Значит, нет возможности манипулировать TCA через TypoScript? Жаль, было бы здорово применить эти изменения к определенным точкам входа в дерево страниц. Спасибо за подсказку по поводу AdditionalConfiguration, не знал о такой возможности. К сожалению, в данном случае это не имеет никакого эффекта. После очистки кеша я посмотрел конфигурацию в бэкенде, и там все еще есть начальные значения для labelи label_alt. - person Pixelrocker; 02.05.2019
comment
Я проверил это на себе, и вы правы. Но в расширении это работает. В файле EXT:xyz/Configuration/TCA/Overrides/tt_content.php добавьте эту строку $GLOBALS['TCA']['tt_address']['ctrl']['label'] = 'company'; - person Heinz Schilling; 02.05.2019
comment
Я решил проблему следующим образом: я изменил сайт (традиционный TYPO3) на расширение sitepackage и манипулировал TCA с помощью файла tt_content.php, как вы рекомендовали. Спасибо, @Heinz, ты дал мне важный совет! - person Pixelrocker; 03.05.2019
comment
В ПОРЯДКЕ. Я сделал новый ответ, который вы можете принять как решение, пожалуйста. - person Heinz Schilling; 03.05.2019