Typo3 Fluid 在前端呈现 html 而不是将 html 包含到主页

Typo3 Fluid renders html in the frontend instead of including the html to the homepage


我正在尝试将 Typo3 Fluid 与后端布局一起使用。但不是呈现内容元素,而是呈现内容元素的 Html。例如,我在后端有一个简单的文本元素 "some text"。它会在前端显示 <p>some text</p> 而不是预期的 "some text" 。主页的 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>

如您所见,我的 Default.html 中根本没有 <p></p> 标签。
我知道文本元素本身在后端使用 <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>

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

您的 Content fluid 周围可能缺少 <f:format.raw> 默认情况下会 htmlescape

我发现了错误,我想这是一个基本的错误。我没有包含可变内容元素 Css - 只有可变内容元素。感谢您的输入。如果您遇到此问题,请将其包含在您的打字稿或后端的根模板中。它应该出现在 "includes"