我正在尝试将 Typo3 Fluid 与后端布局一起使用。但不是渲染内容元素,而是渲染内容元素的 Html。例如,我在后端有一个带有“一些文本”的简单文本元素。它将<p>some text</p>
在前端显示,而不是按预期显示“某些文本”。主页的 html 如下所示:
<p>
<p>test</p>
</p>
我用来渲染内容的 viewhelper 如下所示:
<div class="col-md-4">
<f:cObject typoscriptObjectPath="lib.dynamicContent" data="{pageUid: '{data.uid}', colPos: '11'}" />
</div>
如您所见<p></p>
,我的 Default.html 中根本没有标签。
我知道 Text 元素本身<p> </p>
在后端使用标签,但我很惊讶它们被渲染为文本并包含在 html 中。我只想将 Contentelement 的 html 包含在主页的 html 中,
我想错误可能出在我的自定义主题扩展中 lib.dynamicContent 的这个打字稿中:
lib.dynamicContent = COA
lib.dynamicContent {
10 = LOAD_REGISTER
10 {
colPos.cObject = TEXT
colPos.cObject {
field = colPos
ifEmpty.cObject = TEXT
ifEmpty.cObject {
value.current = 1
ifEmpty = 0
}
}
pageUid.cObject = TEXT
pageUid.cObject {
field = pageUid
ifEmpty.data = TSFE:id
}
contentFromPid.cObject = TEXT
contentFromPid.cObject {
data = DB:pages:{register:pageUid}:content_from_pid
data.insertData = 1
}
wrap.cObject = TEXT
wrap.cObject {
field = wrap
}
}
20 = CONTENT
20 {
table = tt_content
select {
includeRecordsWithoutDefaultTranslation = 1
orderBy = sorting
where = {#colPos}={register:colPos}
where.insertData = 1
pidInList.data = register:pageUid
pidInList.override.data = register:contentFromPid
}
stdWrap {
dataWrap = {register:wrap}
required = 1
}
}
30 = RESTORE_REGISTER
}
这是 Default.html
<f:layout name="Default" />
<f:section name="Main">
<main role="main">
<div class="container">
<div class="row">
<div class="col-md-4">
<f:cObject typoscriptObjectPath="lib.dynamicContent" data="pageUid: '{data.uid}', {colPos: '11'}" />
</div>
<div class="col-md-4">
<f:cObject typoscriptObjectPath="lib.dynamicContent" data="pageUid: '{data.uid}', {colPos: '12'}" />
</div>
<div class="col-md-4">
<f:cObject typoscriptObjectPath="lib.dynamicContent" data="pageUid: '{data.uid}', {colPos: '13'}" />
</div>
</div>
</div>
</main>
</f:section>
感谢您抽出宝贵时间,如果您需要更多信息来帮助我,请发表评论。丹尼尔