[TYPO3-german] News: Eigene Flexform - $this->settings fehlt

David Brünner david.bruenner at t-online.de
Tue Feb 13 12:38:48 CET 2018


Ich vermisse die Konfiguration aus meiner Flexform.

Habe mit 

Eintrag in ext_localconf.php:
------------------------------------------------------------------------------------------------------------------
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS'][\TYPO3\CMS\Core\Configuration\FlexForm\FlexFormTools::class]['flexParsing'][] = \KK\News\Hooks\FlexFormHook::class;
------------------------------------------------------------------------------------------------------------------

classes\Hooks\FlexFormHook.php:
------------------------------------------------------------------------------------------------------------------
namespace KK\News\Hooks;

class FlexFormHook {
	public function parseDataStructureByIdentifierPostProcess(array $dataStructure, array $identifier) {
		if ($identifier['type'] === 'tca' && $identifier['tableName'] === 'tt_content' && $identifier['dataStructureKey'] === 'news_pi1,list') {
			$file = PATH_site . 'typo3conf/ext/kknews/Configuration/FlexForms/additional.xml';
			$content = file_get_contents($file);
			if ($content) {
				$dataStructure['sheets']['extraEntry'] = \TYPO3\CMS\Core\Utility\GeneralUtility::xml2array($content);
			}
		}
		return $dataStructure;
	}
}
------------------------------------------------------------------------------------------------------------------

und der Flexform (Configuration/FlexForms/additional.xml)
------------------------------------------------------------------------------------------------------------------
<extra>
	<ROOT>
		<TCEforms>
			<sheetTitle>Kategorie</sheetTitle>
		</TCEforms>
		<type>array</type>
		<el>
			<settings.baseCategorie>
				<TCEforms>
					<label>Wähle Basis Kategorie:</label>
					<config>
						<type>group</type>
						<internal_type>db</internal_type>
						<allowed>sys_category</allowed>
						<size>10</size>
						<minitems>0</minitems>
						<maxitems>999</maxitems>
					</config>
				</TCEforms>
			</settings.baseCategorie>
		</el>
	</ROOT>
</extra>
------------------------------------------------------------------------------------------------------------------


einen neuen Tab der Flexform hinzugefügt.

In meiner Action  ist diese Eigenschaft (baseCategorie) nicht in $this->settings enthalten.

Lasse ich mir allerdings im Template mit
{_all -> f:debug()}
alles verfügbare anzeigen, existiert ein Array 'settings' und darin die 'baseCategorie'.

Warum kann ich im Controller nicht darauf zugreifen?



More information about the TYPO3-german mailing list