Typo3 Fluid在前端呈现html,而不是将html包含在首页中

问题描述 投票:0回答:1

我正在尝试将Typo3 Fluid与Backendlayouts一起使用。但是,不是呈现Content Elements,而是呈现Content元素的HTML。例如,我在后端有一个简单的Text-Element,带有“ some text”。它将在前端显示<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>

您可以看到,我的Default.html中根本没有<p></p>标签。我知道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="{colPos: '11'}" />
            </div>
            <div class="col-md-4">
                <f:cObject typoscriptObjectPath="lib.dynamicContent" data="{colPos: '12'}" />
            </div>
            <div class="col-md-4">
                <f:cObject typoscriptObjectPath="lib.dynamicContent" data="{colPos: '13'}" />
            </div>
         </div>
      </div>
   </main>
</f:section>

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

typo3 fluid typo3-8.x fluid-styled-content
1个回答
0
投票

默认情况下,内容流周围可能缺少<f:format.raw>会默认htmlescape

© www.soinside.com 2019 - 2024. All rights reserved.