通过流体渲染多类型 link 字段 - TYPO3

Render multitype link field via fluid - TYPO3

在 TYPO3 流体模板中呈现 link field 的最佳方式是什么?

Link 字段通过 flexform 定义为:

<field_link type="array">
  <TCEforms type="array">
    <config type="array">
      <type>input</type>
      <eval>trim</eval>
      <wizards type="array">
        <link type="array">
        <type>popup</type>
        <title>Link</title>
        <icon>link_popup.gif</icon>
        <script>
          browse_links.php ? mode = wizard & amp;
          act = page
        </script>
        <params type="array">
          <blindLinkOptions>file,spec,email,folder</blindLinkOptions>
        </params>
        <JSopenParams>height=300,width=500,status=0,menubar=0,scrollbars=1</JSopenParams>
        </link>
      </wizards>
    </config>
    <label>link</label>
  </TCEforms>
</field_link>

Fluid 带有 viewhelper,例如 link.email、link.external、link.page,但我的 link 字段可以是页面 ID 或外部 link 或电子邮件或 link 到 sys_file 记录。你如何在你的项目中处理这个问题而不在流体模板中制作多个 if 语句? (自定义 viewhelper?,错别字对象)?

您还可以使用 f:link.page 生成链接外部 url 或文件,这并不重要,因为内部使用 typolink

如果您像示例中那样使用向导,则应使用支持所有属性的 f:link.typolink viewhelper。

Link 电子邮件完美无缺

这是我的 flexform:

<settings.link>
    <TCEforms>
        <label>Link</label>
        <config>
            <type>input</type>
            <size>30</size>
            <eval>trim</eval>
            <softref>typolink,typolink_tag,images,url</softref>
            <wizards>
                <_PADDING>2</_PADDING>
                <link>
                    <type>popup</type>
                    <title>Link</title>
                    <module>
                        <name>wizard_element_browser</name>
                        <urlParameters>
                            <mode>wizard</mode>
                        </urlParameters>
                    </module>
                    <icon>link_popup.gif</icon>
                    <script>browse_links.php?mode=wizard</script>
                    <params>
                        <blindLinkOptions>file,folder,url,spec</blindLinkOptions>
                    </params>
                    <JSopenParams>height=500,width=500,status=0,menubar=0,scrollbars=1</JSopenParams>
                </link>
            </wizards>
        </config>
    </TCEforms>
</settings.link>

输出:

<a href="javascript:linkTo_UnCryptMailto('nbjmup+nbjmAuzqpmjol\/dpn');">Liunk</a>