0


我正在尝试将 Typo3 Fluid 与后端布局一起使用。但不是渲染内容元素,而是渲染内容元素的 Html。例如,我在后端有一个带有“一些文本”的简单文本元素。它将<p>some text</p>在前端显示,而不是按预期显示“某些文本”。主页的 html 如下所示:

<p>
&lt;p&gt;test&lt;/p&gt;
</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>

感谢您抽出宝贵时间,如果您需要更多信息来帮助我,请发表评论。丹尼尔

4

2 回答 2

3

我发现了错误,我猜这是一个基本的错误。我没有包含 Fluid Content Elements Css - 只有 Fluid Content Elements。感谢您的输入。如果您遇到此问题,请将其包含在您的打字稿或后端的根模板中。它应该出现在“包含”中

于 2020-02-29T22:55:23.420 回答
0

默认情况下,您的内容流体周围可能缺少一个<f:format.raw>htmlescape

于 2020-02-29T20:08:41.373 回答