Typo3 10.4.1 расширяет страницы с помощью файла ref

Надеюсь , что знающее существо прочитает это.

Задача простая, но что-то пошло не так. Айв написал расширение для расширения таблицы страниц для каждой страницы с некоторыми новыми реквизитами.

Это следующие значения: 1 логическое значение (активно расширение) 1 текстовое значение (например, имя класса css) 1 ссылка на файл sys_file для загруженных изображений

Сами поля в бэкэнде работают должным образом.поля в бэкэнде Но если я попытаюсь получить к ним доступ через флюид в интерфейсе, останется только lony 1 (Int)?

В Fluid: {data.tx_mnadditionalpagefields_extended_background_image}

приводит к этому -> 1 (Целое число)

Что я делаю не так?

мой ext_tables.sql

CREATE TABLE pages (
    tx_mnadditionalpagefields_custom_css_class varchar(255) DEFAULT '' NOT NULL,
    tx_mnadditionalpagefields_activate_extended_rules TINYINT(1) UNSIGNED DEFAULT '0' NOT NULL,
    tx_mnadditionalpagefields_extended_background_image int(11) unsigned NOT NULL default '0'
);

мой внешний.../ Конфигурация /TCA/ Переопределения /pages.php

<?php

defined('TYPO3_MODE') or die();

// Configure new fields:
$fields = [
    'tx_mnadditionalpagefields_custom_css_class' => [
        'label' => 'LLL:EXT:nm_addtional_page_fields/Resources/Private/Language/locallang_db.xlf:pages.tx_mnadditionalpagefields_custom_css_class',
        'exclude' => 1,
        'config' => [
            'type' => 'input',
            'max' => 255
        ],
    ],
    'tx_mnadditionalpagefields_activate_extended_rules' => [
        'exclude' => 1,
        'label' => 'LLL:EXT:nm_addtional_page_fields/Resources/Private/Language/locallang_db.xlf:pages.tx_mnadditionalpagefields_activate_extended_rules',
        'config' => [
            'type' => 'check',
            'default' => 0
        ]
    ],
    'tx_mnadditionalpagefields_extended_background_image' => [
        'exclude' => 1,
        'label' => 'LLL:EXT:nm_addtional_page_fields/Resources/Private/Language/locallang_db.xlf:pages.tx_mnadditionalpagefields_extended_background_image',
        'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
            'tx_mnadditionalpagefields_extended_background_image',
            [
                'maxitems' => 1,
                'minitems' => 0,
                'appearance' => [
                    'createNewRelationLinkTitle' => 'LLL:EXT:cms/locallang_ttc.xlf:images.addFileReference'
                ],
                //'foreign_match_fields' => array(
                //    'fieldname' => 'tx_mnadditionalpagefields_extended_background_image',
                //    'tablenames' => 'pages',
                //    'table_local' => 'sys_file',
                //),
            ],
            $GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']
        ),
    ]
];

// Add new fields to pages:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', $fields);

// Make fields visible in the TCEforms:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes(
    'pages', // Table name
    '--palette--;LLL:EXT:nm_addtional_page_fields/Resources/Private/Language/locallang_db.xlf:pages.palette_title;nm_addtional_page_fields', // Field list to add
    '1', // List of specific types to add the field list to. (If empty, all type entries are affected)
    'after:nav_title' // Insert fields before (default) or after one, or replace a field
);

// Add the new palette:
$GLOBALS['TCA']['pages']['palettes']['nm_addtional_page_fields'] = [
    'showitem' => 'tx_mnadditionalpagefields_activate_extended_rules,tx_mnadditionalpagefields_custom_css_class,tx_mnadditionalpagefields_extended_background_image'
];

Загрузка расширения (WIP): скачать

1 ответ

Для изображений / файлов в локальной таблице хранится только количество ссылок на файлы. (int)1 означает, что есть одна ссылка.

Взгляните на DataProcessing, чтобы узнать, как использовать эти ссылки на файлы с Fluid: https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/7.4/Feature-67662-DataProcessorForFiles.html

Другие вопросы по тегам