Как использовать DataProcessors с плагинами TYPO3 - PullRequest
0 голосов
/ 21 мая 2019

Часто показан способ добавления DataProcessor в PAGE или FLUIDTEMPLATE.Как его можно назначить плагину TYPO3?

Для страницы вы можете сделать это так:

page {
    10 {
        dataProcessing {
            1558428437 = BK2K\BootstrapPackage\DataProcessing\ConstantsProcessor
            1558428437 {
                as = myconstants
                key = settings.constants
            }
        }
   }
}

Но можете ли вы сделать что-то вроде этого:

config.tx_extbase {
    dataProcessing {
        1558428437 = BK2K\BootstrapPackage\DataProcessing\ConstantsProcessor
        1558428437 {
            as = myconstants
            key = settings.constants
        }
    }

Большое спасибо!

Ответы [ 2 ]

1 голос
/ 21 мая 2019

Нет, это невозможно, поскольку обработчики данных являются функцией только 1002 * объекта содержимого .

В этом случае вы можете вызвать ConstantsProcessor вручную в вашем контроллере.действие.Вы можете получить текущий ContentObjectRenderer через $this->configurationManager->getContentObject().$processorConfiguration такой же, как в TypoScript, но как массив:

$constantsProcessor = GeneralUtility::makeInstance(ConstantsProcessor::class);
$data = $constantsProcessor->process(
    $this->configurationManager->getContentObject(),
    [],
    [
        'key' => 'settings.constants',
        'as' => 'myconstants',
    ],
    []
);

// Use $data['myconstants']
0 голосов
/ 21 мая 2019

В настоящее время это невозможно.

Эта функция, безусловно, облегчит интеграторам жизнь.

...