Новости TYPO3: показывать первое изображение в предварительном просмотре

Я использую расширение новостей от Георга Рингера в TYPO3 8.7.13.

Если для предварительного просмотра не выбрано изображение, расширение показывает фиктивное изображение. Можно ли вместо него использовать первое изображение из статьи?

Спасибо


person Bernhard Schusser    schedule 04.07.2018    source источник


Ответы (1)


Конечно, вам нужно переопределить партиал жидкости List/Item. Для этого добавьте

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

в ваших константах typoscript.

Затем скопируйте частичные файлы жидкости из расширения новостей в свое расширение. У вас должно получиться что-то вроде этого:

введите описание изображения здесь

В 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>

to

         <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>
person StatiX    schedule 04.07.2018