При создании записи tt_content
в sys_language_uid = 2
(без перевода / l10n_parent = 0
) в бэкэнде и вставке полей в type => 'inline'
столбец tx_foo_slider_slides
(определение ниже) новые записи в tx_foo_domain_model_slide
создан с sys_language_uid = 0
. Добавление изображения в поле изображения слайда создает sys_file_reference
с sys_language_uid = 2
. Это правильно? Если нет, как мне это изменить? Я бы ожидал, что все записи (tt_content
, tx_foo_slider_slides
, sys_file_reference
) будут созданы с помощью sys_language_uid = 2
. Кажется, что записи, созданные до обновления, имеют sys_language_uid
, установленный в 2, но я не уверен, что изменилось между 8 и 9: это изменение ядра? Или мой сайт / языковая конфигурация? У sys_language_uid
по умолчанию было 0 в TCA, но удаление этого и создание дополнительных записей не показывали никакого другого поведения.
При попытке загрузить записи через репозиторий ExtBase, где я, похоже, должен использовать setRespectSysLanguage(false)
:
- Я не получаю результатов с
setLanguageOverlayMode(false)
- Я получаю результаты с
setLanguageOverlayMode(true)
, но поле изображения - NULL
.
- ... но если я также вручную изменю
tx_foo_domain_model_slide.sys_language_uid
на 2, он будет отлично выглядеть в BE и FE / ExtBase (image
- рабочий FileReference
)
Что может быть не так? Что может потребоваться изменить? Я думаю, что создание записей на языках, отличных от заданных по умолчанию, является поддерживаемым случаем? Для меня основной причиной, по-видимому, является то, что записи создаются с неправильным языковым набором.
Моя конфигурация:
- TYPO3 9.5.5 (обновлено с 8)
config.tx_extbase.features.consistentTranslationOverlayHandling = 1
(но проверено 0
тоже)
config.sys_language_overlay = 0
(я не думаю, что 1
или hideNonTranslated
изменили какое-либо поведение)
- Сайты (и мультисайты). Этот конкретный сайт поставляется с двумя языками:
- Язык 1, немецкий (
languageId: '0'
) отключен.
- Язык 2, включен английский (
languageId: '2'
); fallbackType: strict
- Настраиваемая таблица
tx_foo_domain_model_slide
, включая языковые поля и столбец image
:
'image' => [
'label' => $ll.'tx_foo_domain_model_slide.image',
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
'image',
[
'appearance' => [
'createNewRelationLinkTitle' => 'LLL:EXT:cms/locallang_ttc.xlf:images.addFileReference',
],
'overrideChildTca' => [
// types ...
],
'minitems' => 1,
'maxitems' => 1,
],
$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'] .',m4v,mp4v,mp4'
),
],
- Столбец
tx_foo_slider_slides
в tt_content
:
[
'label' => $ll . 'slider.slides',
'config' => [
'type' => 'inline',
'appearance' => [
'collapseAll' => true,
'expandSingle' => true,
],
'foreign_field' => 'slider',
'foreign_sortby' => 'sorting',
'foreign_table' => 'tx_foo_domain_model_slide',
'maxitems' => 100,
'minitems' => 0,
],
],