TYPO3 FLUID - 图像和每个 - INLINE

时间:2016-08-19 16:52:25

标签: image typo3 fluid

我需要这个FLUID代码“内联”:

<f:for each="{dce:fal(field:'textImageTeaserImage', contentObject:contentObject)}" as="fileReference" iteration="iterator">
<f:image src="{fileReference.uid}" treatIdAsReference="1" title="{field.textImageTeaserHeadline}" alt="{field.textImageTeaserHeadline}" class="img-responsive" width="1920c" height="780c" />
</f:for>

这里是一个带有Image-Url的测试:

{f:for(each: '{dce:fal(field: \'textImageTeaserImage\', contentObject:contentObject)}', as:'fileReference', iteration:'iterator') -> f:uri.image(src: 'fileReference.uid', treatIdAsReference: '1')}

但是,它不起作用:(

谢谢, 塞巴斯蒂安

3 个答案:

答案 0 :(得分:1)

内联语法颠倒顺序(子节点位于父节点之前)。正确的语法:

{f:uri.image(src: 'fileReference.uid', treatIdAsReference: '1') 
    -> f:for(each: '{dce:fal(field: \'textImageTeaserImage\', contentObject: contentObject)}', as: 'fileReference', iteration: 'iterator')}

可以使用相同的方法来渲染节,例如,如果您需要添加ViewHelpers本身未添加的其他标记。

答案 1 :(得分:0)

我建议结合<f:spaceless /> ViewHelper使用自己的部分。

(未经测试的)示例:

<f:section name="main">
    <f:render section="imgs" arguments="{field:field,fieldName:'textImageTeaserImage',contentObject:contentObject}" />
</f:section>

<f:section name="imgs">
    <f:spaceless>
        <f:for each="{dce:fal(field:fieldName, contentObject:contentObject)}" as="fileReference" iteration="iterator">
            <f:image src="{fileReference.uid}" treatIdAsReference="1" title="{field.textImageTeaserHeadline}" alt="{field.textImageTeaserHeadline}" class="img-responsive" width="1920c" height="780c" />
        </f:for>
    </f:spaceless>
</f:section>

答案 2 :(得分:0)

工作:

<f:for each="{dce:fal(field:'textImageTeaserImage', contentObject:contentObject)}" as="fileReference" iteration="iterator">
        <div style="background-image: url('{f:uri.image(src: '{fileReference.uid}', treatIdAsReference: 1, absolute: 1)}');">
        </f:for>

但这不好:)