TYPO3 新闻:在预览中显示第一张图片

TYPO3 News: show first image in preview

我在 TYPO3 8.7.13 中使用来自 Georg Ringer 的新闻扩展。

如果没有选择图像进行预览,扩展程序会显示一个虚拟图像。是否可以改用文章中的第一张图片?

谢谢

当然,您需要覆盖 List/Item 流体部分。为此,添加

plugin.tx_news.view.partialRootPath = EXT:your_extension/Resources/Private/Partials/News/

在你的打字常量中。

然后将新闻扩展中的部分流体文件复制到您的扩展中。你应该有这样的东西:

在新闻/List/Item.html修改这部分

    <f:if condition="{settings.displayDummyIfNoMedia}">
            <div class="news-img-wrap">
                <span class="no-media-element">
                    <n:link newsItem="{newsItem}" settings="{settings}" title="{newsItem.title}">
                        <f:image src="{settings.list.media.dummyImage}" title="" alt="" maxWidth="{f:if(condition: settings.media.maxWidth, then: settings.media.maxWidth, else: settings.list.media.image.maxWidth)}" maxHeight="{f:if(condition: settings.media.maxHeight, then: settings.media.maxHeight, else: settings.list.media.image.maxHeight)}"/>
                    </n:link>
                </span>
            </div>
        </f:if>

         <div class="news-img-wrap">
            <n:link newsItem="{newsItem}" settings="{settings}" title="{newsItem.title}">
                <f:alias map="{mediaElement: '{newsItem.falMedia.0}'}">
                    <f:if condition="{mediaElement.originalResource.type} == 2">
                        <f:image image="{mediaElement}" title="{mediaElement.originalResource.title}" alt="{mediaElement.originalResource.alternative}" maxWidth="{f:if(condition: settings.media.maxWidth, then: settings.media.maxWidth, else: settings.list.media.image.maxWidth)}" maxHeight="{f:if(condition: settings.media.maxHeight, then: settings.media.maxHeight, else: settings.list.media.image.maxHeight)}"/>
                    </f:if>
                    <f:if condition="{mediaElement.originalResource.type} == 4">
                        <f:render partial="Detail/MediaVideo" arguments="{mediaElement: mediaElement}"/>
                    </f:if>
                    <f:if condition="{mediaElement.originalResource.type} == 5">
                        <f:image image="{mediaElement}" title="{mediaElement.originalResource.title}" alt="{mediaElement.originalResource.alternative}" maxWidth="{f:if(condition: settings.media.maxWidth, then: settings.media.maxWidth, else: settings.list.media.image.maxWidth)}" maxHeight="{f:if(condition: settings.media.maxHeight, then: settings.media.maxHeight, else: settings.list.media.image.maxHeight)}"/>
                    </f:if>
                </f:alias>
            </n:link>
        </div>