在TYPO3流体模板中渲染link field的最佳方法是什么?
链接字段通过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,但我的链接字段可以是页面ID,外部链接或电子邮件或链接到sys_file记录。你如何在你的项目中处理它而不在流体模板中制作多个if statemens? (自定义viewhelper?,typoscript对象)?
答案 0 :(得分:2)
您还可以使用f:link.page
生成外部网址或文件的链接,这与使用内部typolink
无关。
如果您使用的是示例中的向导,则应使用支持所有属性的f:link.typolink
viewhelper。
答案 1 :(得分:0)
电子邮件链接完美无缺
这里是我的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>