Есть ли в TYPO3 какой-либо расширенный API для обработки манипуляций с FlexForms? - PullRequest
1 голос
/ 29 февраля 2012

Предлагает ли TYPO3 (или, возможно, некоторые расширения для разработчиков) некоторых помощников API для получения / установки значений для FlexForms XML, которые используются в конфигурациях плагинов (также используется BE / eID)?

Ответы [ 3 ]

3 голосов
/ 29 февраля 2012

На данный момент самый простой способ манипулирования гибкими формами TYPO3 (конфигурация плагина в моем случае) - следующий фрагмент:

$flexformArray = t3lib_div::xml2array($flexformXml);
// Data manipulation here ...
$flexObj = t3lib_div::makeInstance('t3lib_flexformtools');
$xml = $flexObj->flexArray2Xml($flexformArray, true);

Итак, мы обязаны пройти через массив PHP для внесения измененийДанные XML.

Если кто-то предложит лучший способ, вы можете поделиться им.

1 голос
/ 05 марта 2012

Взгляните на поток, расширение extbase http://fedext.net/examples/flux/features.html

Плюсы: - Пишите FlexForms в жидкости - Динамическая перезагрузка частей форм, когда что-то меняется - Возможность подключиться к загрузке / сохранению значений flexform и выполнить дополнительную обработку

Минусы: - Потребности накормлены, что огромно и излишне, если вы просто хотите лучше справиться с гибкими формами - Для меня, по крайней мере, было несколько ошибок

Однако, даже если вы не используете его, имеет смысл скачать его и взглянуть на код. Вы можете многое узнать о том, как T3 обрабатывает FlexForms внутри, и, возможно, придумаете более простой способ решения вашей проблемы.

0 голосов
/ 23 мая 2019

С TYPO3 v8 сделано с

$flexformArray = GeneralUtility::xml2array($row['pi_flexform']);

// data manipulation like
$flexformArray['data']['additional']['lDEF']['settings.limit']['vDEF'] = 5;

// convert array back to flexformXML
$flexObj = GeneralUtility::makeInstance(FlexFormTools::class);
$flexFormXml = $flexObj->flexArray2Xml($flexformArray, true);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...