使用 f:media 文件调用默认图像
Call a default image wih f:media file
我正在尝试将动态图像的调用更改为静态默认图像,所以我更改了:
<f:media file="{mediaElement}" />
与:
<f:media file="{f:uri.image(src: 'paht_to_my_default_image\', treatIdAsReference:1}" />
但是我得到一个错误:
Argument 1 passed to TYPO3\CMS\Core\Resource\Rendering\RendererRegistry::getRenderer() must implement interface TYPO3\CMS\Core\Resource\FileInterface, string given, called in /var/www/src/typo3_src-7.6.32/typo3/sysext/fluid/Classes/ViewHelpers/MediaViewHelper.php on line 90
不知道是不是语法错误
如果您使用文件属性,它需要文件列表中文件的 uid。您可以使用 f:image viewhelper 并给它一个 src 属性:
<f:image src="path_to_my_default_image" />
我的问题解决了,问题出在语法层面。
下面这段代码完美运行:
<f:image src="EXT:myext/Resources/typo3_logo.png"
class="img-responsive lazyload"
title="{mediaElement.originalResource.title}"
alt="{mediaElement.originalResource.alternative}"
data="{src: '{f:uri.image(image:mediaElement,
width: settings.list.media.image.width,
height: settings.list.media.image.height,
maxWidth: settings.list.media.image.maxWidth,
maxHeight: settings.list.media.image.maxHeight)}'}"
width="{f:if(condition: settings.list.media.image.width, then:
settings.list.media.image.width, else: settings.media.width)}"
height="{f:if(condition: settings.list.media.image.height, then:
settings.list.media.image.height, else: settings.media.height)}"
/>
我正在尝试将动态图像的调用更改为静态默认图像,所以我更改了:
<f:media file="{mediaElement}" />
与:
<f:media file="{f:uri.image(src: 'paht_to_my_default_image\', treatIdAsReference:1}" />
但是我得到一个错误:
Argument 1 passed to TYPO3\CMS\Core\Resource\Rendering\RendererRegistry::getRenderer() must implement interface TYPO3\CMS\Core\Resource\FileInterface, string given, called in /var/www/src/typo3_src-7.6.32/typo3/sysext/fluid/Classes/ViewHelpers/MediaViewHelper.php on line 90
不知道是不是语法错误
如果您使用文件属性,它需要文件列表中文件的 uid。您可以使用 f:image viewhelper 并给它一个 src 属性:
<f:image src="path_to_my_default_image" />
我的问题解决了,问题出在语法层面。
下面这段代码完美运行:
<f:image src="EXT:myext/Resources/typo3_logo.png"
class="img-responsive lazyload"
title="{mediaElement.originalResource.title}"
alt="{mediaElement.originalResource.alternative}"
data="{src: '{f:uri.image(image:mediaElement,
width: settings.list.media.image.width,
height: settings.list.media.image.height,
maxWidth: settings.list.media.image.maxWidth,
maxHeight: settings.list.media.image.maxHeight)}'}"
width="{f:if(condition: settings.list.media.image.width, then:
settings.list.media.image.width, else: settings.media.width)}"
height="{f:if(condition: settings.list.media.image.height, then:
settings.list.media.image.height, else: settings.media.height)}"
/>