0

我正在使用 Flexforms 编写带有自定义内容元素的 Typo3 扩展。一切正常。我只想像标准的 Typo3 内容元素一样,在 tt_content 内部的“标题”中添加一个值。这样,如果我创建翻译,翻译内容的默认标题应显示为“我的标题(副本 1)”,而不仅仅是“(副本 1)”。此外,如果我尝试向元素添加锚链接,则应该显示标题。

例如,我的 flexform 是这样开始的:

<T3DataStructure>
  <sheets>
    <sGeneral>
    <ROOT>              
      <TCEforms>
        <sheetTitle>My Element</sheetTitle>
      </TCEforms>               
      <type>array</type>
      <el>
        <headline>
          <TCEforms>
            <label>Text</label>
            <config>
               <type>input</type>                                               
            </config>
          </TCEforms>
        </headline>
        ...

我在我的 HTML 模板中访问上面的标题值,如下所示:{flexform.sGeneral.headline}

效果很好。我怎样才能实现这个值也被写入 tt_content 标头?

我真的很感谢你的帮助。

4

1 回答 1

0

flexform(以及里面声明的所有字段)是整个 tt_content 记录的一个字段。因此,无论您是访问弹性表单字段数据还是从记录中的任何常规字段访问数据,都存在很大差异。你不能把它混在一起。(您的弹性表单中的字段与记录header的常规字段无关)header

要让编辑者访问常规标题字段,您需要为您的 tt_content ( CType) 类型声明访问权限。这是在 TCA 声明中完成的。

无论如何,您应该可以header从您的 FLUID 访问该字段,因为您可以访问整个 tt_content 记录。通常{data.fieldname},您可以使用调试器进行检查:
<f:debug title="all fluid variables">{_all}</f:debug>

于 2020-12-21T10:22:13.827 回答