我在后端视图中创建了一个Page并向这个页面添加了一个模板,我将这个设置添加到了我的模板中:
# Default PAGE object:
config.contentObjectExceptionHandler = 0
page = PAGE
page.10 = FLUIDTEMPLATE
page.10 {
templateName = System-Template
templateRootPaths.10 = EXT:tjms/Resources/Private/Templates/Page/
variables {
contentNormal < styles.content.get
}
}
现在,您可以看到这个页面的模板在我的插件"tjms“(tjms/Resources/Private/Templates/Page/
)中,在这个System-Template.html
中,我添加了以下代码:
<html
data-namespace-typo3-fluid="true"
xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
>
<f:cObject typoscriptObjectPath="lib.dynamicContent" data="{colPos: '0'}" />
</html>
在管理后端的页面上,我添加了一个内容元素,更具体地说,我向页面添加了一个动态内容元素(https://extensions.typo3.org/extension/dce/)。我现在遇到的问题是,当我打开页面时,我总是收到这个错误:
No Content Object definition found at TypoScript object path "lib.dynamicContent"
我想这可能是因为我的插件不能访问DCE插件的lib.dynamicContent?有办法把它联系起来吗?或者是我唯一的选择,把我的系统模板内的DCE插件?
谢谢你的帮助!
发布于 2020-05-14 06:14:22
对于当前最重要的错误,您可以接受https://github.com/benjaminkott/bootstrap_package/blob/master/Configuration/TypoScript/ContentElement/Helper/DynamicContent.typoscript并将其包含在TypoScript设置(@import ...
)中。这是一个非常强大和众所周知的TypoScript片段,它允许对列和页面进行过滤,并允许使用列内容继承(也称为“幻灯片”)和内容元素的方便包装('elementWrap')。我认为它是瑞士军刀的TYPO3内容渲染。
但是从这里开始,我认为您对页面模板和内容元素有一个误解。也许我只是不明白你的动机。
您已经为您的流体页面模板定义了一个变量"contentNormal“。可能它没有提供您想要的内容(styles.content.get包含所有内容,并且没有对1列进行过滤)。然而,您可以在流体{contentNormal -> f:format.raw()}
中使用它。
您的内容元素应该与您的页面模板无关,而是完全不同。如果仅当您将该内容元素放在页面上时才会出现此错误,这意味着content元素将尝试呈现lib.dynamicContent
,这只有在执行一些非常特殊的操作(如从另一个页面呈现列)时才有意义。
https://stackoverflow.com/questions/61777053
复制相似问题