Заставить индикаторы картинок переключаться при нажатии
Использую MIGX внутри которого несколько картинок. На странице больше одного товара. Картинки переключаются по стрелочкам все отлично, остался последний штрих — Не могу заставить индикаторы картинок переключаться при нажатии.
У каждого товара должен быть свой уникальный номер.
товар 33:
товар 34:
Чанк: tpl-personal:
Чанк: tplIndicator:
проблема что не могу в data-bs-target="#carouselExampleControls-[[+MIGX_id]]" передать цифру, поэтому индикаторы "<button type=«button» не переключают картинки,
были попытки так:
У каждого товара должен быть свой уникальный номер.
товар 33:
<div id="carouselExampleControls-33
должен быть уникальным на странице и равен индикатором для переключения картинок
<button type="button" data-bs-target="#carouselExampleControls-33" data-bs-slide-to="0" class="active" aria-label="Slide 1"></button>
<button type="button" data-bs-target="#carouselExampleControls-33" data-bs-slide-to="1" class="" aria-label="Slide 2"></button>
<button type="button" data-bs-target="#carouselExampleControls-33" data-bs-slide-to="2" class="" aria-label="Slide 3"></button>
<button type="button" data-bs-target="#carouselExampleControls-33" data-bs-slide-to="3" class="" aria-label="Slide 4"></button>
товар 34:
<div id="carouselExampleControls-34
должен быть уникальным на странице и равен индикатором для переключения картинок
<button type="button" data-bs-target="#carouselExampleControls-34" data-bs-slide-to="0" class="active" aria-label="Slide 1"></button>
<button type="button" data-bs-target="#carouselExampleControls-34" data-bs-slide-to="1" class="" aria-label="Slide 2"></button>
<button type="button" data-bs-target="#carouselExampleControls-34" data-bs-slide-to="2" class="" aria-label="Slide 3"></button>
<button type="button" data-bs-target="#carouselExampleControls-34" data-bs-slide-to="3" class="" aria-label="Slide 4"></button>
Чанк: tpl-personal:
<div itemscope itemtype="http://schema.org/Product" class="col-6 col-xs-4 col-sm-4 col-md-3 col-lg-3 col-xl-3 p-2 p-md-3 lh-sm tovar mb-5">
<div id="carouselExampleControls-[[+MIGX_id]]" class="carousel slide carousel-fade" data-bs-ride="carousel" data-bs-interval="false">
<div class="carousel-indicators">
[[!getImageList?
&value=`[[+gallerys]]`
&tpl=`tplIndicator`
&docid=`[[*id]]`
&docIdx=`[[+idx]]`
&migxId=`[[+MIGX_id]]`
]]
Чанк: tplIndicator:
<button type="button" data-bs-target="#carouselExampleControls-[[+MIGX_id]]" data-bs-slide-to="[[+idx:subtract]]" class="[[+idx:is=`1`:then=`active`]]" aria-label="Slide [[+idx]]"></button>
проблема что не могу в data-bs-target="#carouselExampleControls-[[+MIGX_id]]" передать цифру, поэтому индикаторы "<button type=«button» не переключают картинки,
были попытки так:
[[getImageList?
&value=`[[+gallerys]]`
&tpl=`tplIndicator`
&docid=`[[*id]]`
&docIdx=`[[+idx]]`
&myCustomParam=`[[+MIGX_id]]` // Передаем как пользовательский параметр
]]
tplIndicator:
<div>
ID из MIGX: [[+myCustomParam]]
</div>
не работает… Комментарии: 2
Ура, нашел!
<div id="carouselExampleControls-[[+MIGX_id]]" class="carousel slide carousel-fade" data-bs-ride="carousel" data-bs-interval="false">
<div class="carousel-indicators">
[[!getImageList?
&value=`[[+gallerys]]`
&tpl=`tplIndicator`
&docid=`[[*id]]`
&docIdx=`[[+idx]]`
&migxId=`[[+MIGX_id]]`
&tvname=`[[+MIGX_id]]`
]]
<button type="button" data-bs-target="#carouselExampleControls-[[+property.tvname]]"
[[+fieldname]] — любое поле из конфигурации MIGX или из переданных параметров в сниппет
[[+idx]] — порядковый номер, начиная с 1
[[+_first]] — вернет 1, если это первая запись
[[+_last]] — вернет 1, если это последняя запись
[[+_alt]] — вернет 1, если это четная запись
[[+total]] — общее число элементов (можно изменить через &totalVar)
[[+property.name]] — выведет параметр с именем &name=`` в вызове getImageList.
Например, при вызове:
[[getImageList? &tvname=`slider` &tpl=`@CODE: [[+image]]`]]
плейсхолдер [[+property.tvname]] будет иметь значение «slider».
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.