Moin moin.
In einem TYPO3 v11-Projekt gibt es folgende Typoscript-Bedingungen:
[tree.rootLine["1"]["layout"] == 5]
page.includeCSS.main = EXT:theme/Resources/Public/css/main_2023.css
config.htmlTag.attributes.data-fe-layout = 5
[end]
Laut der Typoscript Dokumentation sollte dies problemlos funktionieren, aber wird den PHP Log übervoll von solche Fehlermeldungen:
Tue, 07 May 2024 15:25:00 +0200 [ERROR] request="cea50f4b447d0" component="TYPO3.CMS.Frontend.Configuration.TypoScript.ConditionMatching.ConditionMatcher": PHP Warning: Undefined array key 1 in /html/typo3-composer/vendor/symfony/expression-language/Node/GetAttrNode.php line 97- Exception: PHP Warning: Undefined array key 1 in /html/typo3-composer/vendor/symfony/expression-language/Node/GetAttrNode.php line 97, in file /html/typo3-composer/public/typo3/sysext/core/Classes/Error/ErrorHandler.php:137 - {"expression":"tree.rootLine[\"1\"][\"layout\"] == 5","exception":"TYPO3\\CMS\\Core\\Error\\Exception: PHP Warning: Undefined array key 1 in /html/typo3-composer/vendor/symfony/expression-language/Node/GetAttrNode.php line 97 in /html/typo3-composer/public/typo3/sysext/core/Classes/Error/ErrorHandler.php:137\nStack trace:\n#0 /html/typo3-composer/vendor/symfony/expression-language/Node/GetAttrNode.php(97): TYPO3\\CMS\\Core\\Error\\ErrorHandler->handleError(2, '...', '...', 97)\n#1 /html/typo3-composer/vendor/symfony/expression-language/Node/GetAttrNode.php(92): Symfony\\Component\\ExpressionLanguage\\Node\\GetAttrNode->evaluate(Array, Array)\n#2 /html/typo3-composer/vendor/symfony/expression-language/Node/BinaryNode.php(95): Symfony\\Component\\ExpressionLanguage\\Node\\GetAttrNode->evaluate(Array, Array)\n#3 /html/typo3-composer/vendor/symfony/expression-language/ExpressionLanguage.php(67): Symfony\\Component\\ExpressionLanguage\\Node\\BinaryNode->evaluate(Array, Array)\n#4 /html/typo3-composer/public/typo3/sysext/core/Classes/ExpressionLanguage/Resolver.php(81): Symfony\\Component\\ExpressionLanguage\\ExpressionLanguage->evaluate('...', Array)\n#5 /html/typo3-composer/public/typo3/sysext/core/Classes/Configuration/TypoScript/ConditionMatching/AbstractConditionMatcher.php(201): TYPO3\\CMS\\Core\\ExpressionLanguage\\Resolver->evaluate('...')\n#6 /html/typo3-composer/public/typo3/sysext/core/Classes/Configuration/TypoScript/ConditionMatching/AbstractConditionMatcher.php(183): TYPO3\\CMS\\Core\\Configuration\\TypoScript\\ConditionMatching\\AbstractConditionMatcher->evaluateExpression('...')\n#7 /html/typo3-composer/public/typo3/sysext/core/Classes/TypoScript/Parser/TypoScriptParser.php(190): TYPO3\\CMS\\Core\\Configuration\\TypoScript\\ConditionMatching\\AbstractConditionMatcher->match('...')\n#8 /html/typo3-composer/public/typo3/sysext/core/Classes/TypoScript/TemplateService.php(1024): TYPO3\\CMS\\Core\\TypoScript\\Parser\\TypoScriptParser->parse('...', Object(TYPO3\\CMS\\Frontend\\Configuration\\TypoScript\\ConditionMatching\\ConditionMatcher))\n#9 /html/typo3-composer/public/typo3/sysext/extbase/Classes/Configuration/BackendConfigurationManager.php(75): TYPO3\\CMS\\Core\\TypoScript\\TemplateService->generateConfig()\n#10 /html/typo3-composer/public/typo3/sysext/extbase/Classes/Configuration/AbstractConfigurationManager.php(209): TYPO3\\CMS\\Extbase\\Configuration\\BackendConfigurationManager->getTypoScriptSetup()\n#11 /html/typo3-composer/public/typo3/sysext/extbase/Classes/Configuration/AbstractConfigurationManager.php(139): TYPO3\\CMS\\Extbase\\Configuration\\AbstractConfigurationManager->getExtbaseConfiguration()\n#12 /html/typo3-composer/public/typo3/sysext/extbase/Classes/Configuration/ConfigurationManager.php(109): TYPO3\\CMS\\Extbase\\Configuration\\AbstractConfigurationManager->getConfiguration('...', NULL)\n#13 /html/typo3-composer/public/typo3/sysext/extbase/Classes/Utility/LocalizationUtility.php(231): TYPO3\\CMS\\Extbase\\Configuration\\ConfigurationManager->getConfiguration('...', '...')\n#14 /html/typo3-composer/public/typo3/sysext/extbase/Classes/Utility/LocalizationUtility.php(169): TYPO3\\CMS\\Extbase\\Utility\\LocalizationUtility::loadTypoScriptLabels('...', '...')\n#15 /html/typo3-composer/public/typo3/sysext/extbase/Classes/Utility/LocalizationUtility.php(100): TYPO3\\CMS\\Extbase\\Utility\\LocalizationUtility::initializeLocalization('...', '...', Array, '...')\n#16 /html/typo3-composer/public/typo3/sysext/belog/Classes/Controller/SystemInformationController.php(74): TYPO3\\CMS\\Extbase\\Utility\\LocalizationUtility::translate('...', '...')\n#17 /html/typo3-composer/public/typo3/sysext/core/Classes/EventDispatcher/EventDispatcher.php(51): TYPO3\\CMS\\Belog\\Controller\\SystemInformationController->appendMessage(Object(TYPO3\\CMS\\Backend\\Backend\\Event\\SystemInformationToolbarCollectorEvent))\n#18 /html/typo3-composer/public/typo3/sysext/adminpanel/Classes/Service/EventDispatcher.php(41): TYPO3\\CMS\\Core\\EventDispatcher\\EventDispatcher->dispatch(Object(TYPO3\\CMS\\Backend\\Backend\\Event\\SystemInformationToolbarCollectorEvent))\n#19 /html/typo3-composer/public/typo3/sysext/backend/Classes/Backend/ToolbarItems/SystemInformationToolbarItem.php(237): TYPO3\\CMS\\Adminpanel\\Service\\EventDispatcher->dispatch(Object(TYPO3\\CMS\\Backend\\Backend\\Event\\SystemInformationToolbarCollectorEvent))\n#20 /html/typo3-composer/public/typo3/sysext/backend/Classes/Backend/ToolbarItems/SystemInformationToolbarItem.php(171): TYPO3\\CMS\\Backend\\Backend\\ToolbarItems\\SystemInformationToolbarItem->collectInformation()\n#21 /html/typo3-composer/public/typo3/sysext/backend/Classes/Controller/SystemInformationController.php(39): TYPO3\\CMS\\Backend\\Backend\\ToolbarItems\\SystemInformationToolbarItem->getDropDown()\n#22 /html/typo3-composer/public/typo3/sysext/backend/Classes/Http/RouteDispatcher.php(91): TYPO3\\CMS\\Backend\\Controller\\SystemInformationController->renderMenuAction(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#23 /html/typo3-composer/public/typo3/sysext/backend/Classes/Http/RequestHandler.php(110): TYPO3\\CMS\\Backend\\Http\\RouteDispatcher->dispatch(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#24 /html/typo3-composer/public/typo3/sysext/core/Classes/Middleware/ResponsePropagation.php(34): TYPO3\\CMS\\Backend\\Http\\RequestHandler->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#25 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Core\\Middleware\\ResponsePropagation->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(TYPO3\\CMS\\Backend\\Http\\RequestHandler))\n#26 /html/typo3-composer/public/typo3/sysext/backend/Classes/Middleware/SiteResolver.php(69): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#27 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Backend\\Middleware\\SiteResolver->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(Psr\\Http\\Server\\RequestHandlerInterface@anonymous))\n#28 /html/typo3-composer/public/typo3/sysext/backend/Classes/Middleware/AdditionalResponseHeaders.php(41): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#29 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Backend\\Middleware\\AdditionalResponseHeaders->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(Psr\\Http\\Server\\RequestHandlerInterface@anonymous))\n#30 /html/typo3-composer/public/typo3/sysext/backend/Classes/Middleware/OutputCompression.php(47): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#31 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Backend\\Middleware\\OutputCompression->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(Psr\\Http\\Server\\RequestHandlerInterface@anonymous))\n#32 /html/typo3-composer/public/typo3/sysext/backend/Classes/Middleware/BackendUserAuthenticator.php(166): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#33 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Backend\\Middleware\\BackendUserAuthenticator->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(Psr\\Http\\Server\\RequestHandlerInterface@anonymous))\n#34 /html/typo3-composer/public/typo3/sysext/backend/Classes/Middleware/BackendRouteInitialization.php(86): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#35 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Backend\\Middleware\\BackendRouteInitialization->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(Psr\\Http\\Server\\RequestHandlerInterface@anonymous))\n#36 /html/typo3-composer/public/typo3/sysext/backend/Classes/Middleware/ForcedHttpsBackendRedirector.php(55): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#37 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Backend\\Middleware\\ForcedHttpsBackendRedirector->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(Psr\\Http\\Server\\RequestHandlerInterface@anonymous))\n#38 /html/typo3-composer/public/typo3/sysext/backend/Classes/Middleware/LockedBackendGuard.php(75): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#39 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Backend\\Middleware\\LockedBackendGuard->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(Psr\\Http\\Server\\RequestHandlerInterface@anonymous))\n#40 /html/typo3-composer/public/typo3/sysext/core/Classes/Middleware/NormalizedParamsAttribute.php(45): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#41 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Core\\Middleware\\NormalizedParamsAttribute->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(Psr\\Http\\Server\\RequestHandlerInterface@anonymous))\n#42 /html/typo3-composer/public/typo3/sysext/core/Classes/Middleware/VerifyHostHeader.php(55): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#43 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(172): TYPO3\\CMS\\Core\\Middleware\\VerifyHostHeader->process(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest), Object(Psr\\Http\\Server\\RequestHandlerInterface@anonymous))\n#44 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/MiddlewareDispatcher.php(78): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#45 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/AbstractApplication.php(86): TYPO3\\CMS\\Core\\Http\\MiddlewareDispatcher->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#46 /html/typo3-composer/public/typo3/sysext/backend/Classes/Http/Application.php(72): TYPO3\\CMS\\Core\\Http\\AbstractApplication->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#47 /html/typo3-composer/public/typo3/sysext/core/Classes/Http/AbstractApplication.php(100): TYPO3\\CMS\\Backend\\Http\\Application->handle(Object(TYPO3\\CMS\\Core\\Http\\ServerRequest))\n#48 /html/typo3-composer/public/typo3/index.php(20): TYPO3\\CMS\\Core\\Http\\AbstractApplication->run()\n#49 /html/typo3-composer/public/typo3/index.php(21): {closure}()\n#50 {main}"}
Leider finde ich keine passende Lösung zum Problem.
Any Ideas?
UPD: Kondition an sich funktioniert problemlos. Auch [tree.rootLine["1"]["layout"] existiert.