@3dben

Как написать это с помощью twig?

Здравствуйте. Прохожу курс по opencart. Там еще нет шаблонизатора. Всё по старинке. Документация по шаблонизатору скуданя.

Есть у меня каруселька. Нужно вывести точки и слайды, но как это сделать с помощью twig? Вот то что написано обычным шаблонизатором php как раз и есть проблема (выделил жирным). Я не знаю как это реализовать с помощью twig)
<div class="carousel-indicators-wrap">
            <ol class="carousel-indicators">
                {% for banner in banners %}
                <li data-target="#carousel" data-slide-to="<?=$i?>"<?php if($i == 0) echo ' class="active"' ?>></li>
                {% endfor %}
            </ol>
        </div><!-- /.carousel-indicators-wrap -->

        <!-- Wrapper for slides -->
        <div class="carousel-inner" role="listbox">
            <?php $i = 0; foreach($banners as $banner): ?>
            <div class="item<?php if($i == 0) echo ' active' ?>">
                <div class="bgslide" style="background-image: url(<?=$banner['image']?>);"></div>
                <div class="container">
                    <div class="carousel-caption">
                        <h3><?=$banner['title']?></h3>
                        <?php if($banner['link']): ?>
                        <a href="<?=$banner['link']?>" class="btn-red">Shop Women’s Apparel</a>
                        <?php endif; ?>
                    </div>
                </div>
            </div>
            <?php $i++; endforeach; ?>
        </div>

<b><li data-target="#carousel"
 data-slide-to="<?=$i?>"
<?php if($i == 0) echo ' class="active"' ?>></b>
</li>

<?php $i = 0; foreach($banners as $banner): ?>
<?php $i++; endforeach; ?>
  • Вопрос задан
  • 145 просмотров
Решения вопроса 1
IceRD
@IceRD
https://twig.symfony.com/doc/3.x/tags/for.html
используйте for
{% for banner in banners %}
<li data-target="#carousel" data-slide-to="{{ loop.index }}" {% if loop.index == 1 %} class="active" {% endif %} ></li>
{% endfor %}


Работает местами криво, но возможно вам поможет https://php2twig.com/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы