繁体   English   中英

为链接向导生成的打字链接字段创建 TYPO3 Fluid 链接

[英]Create TYPO3 Fluid link for typolink fields generated by a link wizard

我经常在我的 TCA 中使用链接向导。

在有条件的情况下找出我必须在 Fluid(页面/电子邮件/外部)中呈现哪种链接是可怕的。 是否有解决方案或我必须创建自己的 ViewHelper?

它似乎没有记录,但您可以将它传递给<f:link.page>并且它会正确呈现,即使它是外部、电子邮件或文件链接。 这是因为在内部, <f:link.page>使用UriBuilder来构建 URL,而 UriBuilder 使用 Typolink。

<f:link.page pageUid="{myLinkFieldValue}">My link</f:link.page>

这是我为此使用的 ViewHelper(+ 一个助手类): https : //gist.github.com/BenjaminBeck/7220623

我认为link.typolink ViewHelper 是您正在寻找的,至少对于 TYPO3 7.0 及更高版本。

<f:link.typolink parameter="{link}">
   Linktext
</f:link.typolink>

 External Link -- <f:link.external uri="http://www.typo3.org" target="_blank">external link</f:link.external> Email -- <f:link.email additionalAttributes="{foo: 'bar'}" email="NULL" class="NULL" dir="NULL" id="NULL" lang="NULL" style="NULL" title="NULL" accesskey="NULL" tabindex="123" onclick="NULL" name="NULL" rel="NULL" rev="NULL" target="NULL"> <!-- tag content - may be ignored! --> </f:link.email> Internal Link -- <f:link.page pageUid="1" additionalParams="{extension_key: {foo: 'bar'}}">page link</f:link.page>

在 Fluid 中,有不同的链接视图助手:

<f:link.action action="show">action link</f:link.action>
<f:link.email email="foo@bar.tld" />
<f:link.external uri="http://www.typo3.org" target="_blank">external link</f:link.external>
<f:link.page>page link</f:link.page>

代码(和一些示例)可以在以下位置找到:typo3/sysext/fluid/Classes/ViewHelpers/Link

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM