TYPO3 Exception 1540246570

TYPO3 13.4: No Content Object definition found [21.10.2024]

This error happens when you did not include the Site set "Fluid Styled Content" but try to use a content element provided by this system extension.

Solution: Require the site set in your site configuration: Using a site set as dependency in a site or depend on it from your site packages site set: Defining the site set with a fluid_styled_content dependency.

Is there a problem with the plugin ?

It happens when a content element of type plugin is created and then you forget to choose the specific Plugin from the tab 'Plug-in'


Occures if you pass the wrong pluginType to TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(...).

TYPO3 12 - General Plugin: No Content Object definition found at TypoScript object path "tt_content.list.20

If your extension is a general plugin, check if it is properly installed (and activated for legacy installations) and the required TypoScript included. Otherwise proceed as follows.

tt_content.php adds the plugin by

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPlugin()
Copied!

However the tt_content TypoScript for the list type is not added if you look into the Active TypoScript in the backend. The extension TypoScript is like this:

EXT:my_extension/Configuration/TypoScript/setup.typoscript
plugin.tx_myextension {
    controller.action = EXTBASEPLUGIN
}
Copied!

Solution

Always add the TypoScript for the tt_content list rendering.

ext_localconf.php

EXT:my_extension/Configuration/TypoScript/setup.typoscript
tt_content.list.20 {
    tx_myextension_controllers_action = < plugin.tx_myextension.controller.action
}
Copied!

You have removed Typoscript by Conditon?

For example you have used this:

[globalVar = TSFE:id = {$noLoginPluginOnPids}]

lib.login >

[global]
Copied!

This will lead to this Exception since TYPO3 LTS 9 if you use something like the next line in your Fluid Template <f:cObject typoscriptObjectPath="lib.login" />

Solution

change typoscript to:

[globalVar = TSFE:id = {$noLoginPluginOnPids}]

lib.login =

[global]
Copied!

Exception is thrown in a fluid template using a view helper

Might be caused by a translation not found in Fluid:

<f:translate key = "Button_Helpful" />
Copied!

If translation key is not found in the default language file, this error will be thrown.

Solution

add a default text to the tag and also fix the language file.

The error does not occur when you use the Fluid lanuage tag with a path:

<f:translate key = "LLL:EXT:yourExtension/Resources/Private/Language/locallang.xml:Button_Helpful" />
Copied!

TYPO3 12/13 - General Plugin: No Content Object definition found at TypoScript object path "tt_content.list.20"

This exception could happen because a plugin was registered before using the list content element and the plugin subtype list_type and is now registered as ExtensionUtility::PLUGIN_TYPE_CONTENT_ELEMENT.

Have a look at Deprecation: #105076 - Plugin content element and plugin sub types.

Either an Upgrade Wizard was not executed for those plugins or may be you need to create one.

If Upgrade Wizard creation is required, you can have a look in TYPO3 core for example, search Upgrade Wizard extending AbstractListTypeToCTypeUpdate, like final class IndexedSearchCTypeMigration extends AbstractListTypeToCTypeUpdate.