Typo3 Fluid检测文本中的链接

时间:2013-11-06 10:54:46

标签: hyperlink textarea typo3 fluid

此代码在我的前端显示来自后端的Textarea输入:

<f:format.nl2br>{data.textfield}</f:format.nl2br>

可能有链接作为简单文本,例如:

http://www.example.com

是否有可能以某种方式检测这些链接并使用Typo3 6和Fluid包裹其周围的链接标签?

在Javascript中相当容易,但如果可能的话,我更喜欢这里的Typo3 / Fluid解决方案。

2 个答案:

答案 0 :(得分:0)

为什么不在后端使用RTE作为Textfield并使用

在Fluid中渲染它
<f:format.html>{data.textfield}</f:format.html>

如果你这样做,你也会渲染你的换行符和所有的链接。您可以在TCA配置中启用RTE功能:

'textarea' => array(
        'exclude' => 0,
        'label' => 'your_label_from_locallang.xlf',
        'config' => array(
                'type' => 'text',
                'cols' => 40,
                'rows' => 15
        ),
        'defaultExtras' => 'richtext[]'
    ),

答案 1 :(得分:0)

流体是否用于扩展的上下文?如果是这样,请检查php端并将布尔值绑定到视图。然后你可以使用这样的东西:

<f:if condition="isLink">
    <f:then>
        <f:link.external uri="{data.textfield}" target="_blank">{data.textfield}</f:link.external>
    </f:then>
    <f:else>
        <f:format.nl2br>{data.textfield}</f:format.nl2br>
    </f:else>
</f:if>

不幸的是,条件在流体方面的检查非常有限,所以如果你不能使用php,这将无济于事。 另一种可能性是为此创建一个ViewHelper。