msGallery ограниченный вывод превью
-
Появилась задача сделать вывод превью под основной каруселью товаров до 3-х итемов.
Вот основной чанк
tpl.msGallery
, в моем случае он переделан, у вас он может выглядеть по дефолту.<div class="product-slider productSticky"> <div class="product-slider__slides"> {if $files?} {foreach $files as $file} <img class="product-slider__image" src="{$file['url']}" alt="[[*pagetitle]]" /> {/foreach} {/if} </div> <div class="product-slider__preview"> <!-- Вот необходимый код для вывод превью --> {if $files && is_array($files)} {var $count = 0} {foreach $files as $file} {if $count < 3 && !empty($file['url'])} <img class="product-slider__image-preview" src="{$file['url']}" alt="[[*pagetitle]]" /> {var $count = $count + 1} {/if} {/foreach} {/if} <!-- Вот необходимый код для вывод превью --> </div> <button class="product-slider__btn product-slider__btn_prev">️</button> <button class="product-slider__btn product-slider__btn_next">️</button> </div>
Что мы тут делаем, проверяем является ли
$files
массивов -{if $files && is_array($files)}
, если все ок то далее создаем переменную{var $count = 0}
далее по стандарту используем метод перебор массива{foreach $files as $file}
.Далее делаем проверку на количество что бы переменная
$count
не была больше 3-х
{if $count < 3 && !empty($file['url'])}
При при каждой итерации (перебор массива) прибавляем значение переменной{var $count = $count + 1}
Вот и все, теперь у нас в превью под основной каруселью будет выводиться максимум 3.
© 2024 - 2025 ExLends, Inc. Все права защищены.