Я хочу получить список, подобный этому, с помощью smarty.Smarty - foreach loop 4 раза и создать новый список
<ul>
<li>
<a>img1</a>
<a>img2</a>
<a>img3</a>
<a>img4</a>
</li>
<li>
<a>img5</a>
<a>img6</a>
<a>img7</a>
<a>img8</a>
</li>
<li>
<a>img9</a>
<a>img10</a>
<a>img11</a>
<a>img12</a>
</li>
</ul>
Используя этот пример кода
<ul class="bullet">
{foreach from=$manufacturers item=manufacturer name=manufacturer_list}
{if $smarty.foreach.manufacturer_list.index < 4}
<li class="{if $smarty.foreach.manufacturer_list.last}last_item{elseif $smarty.foreach.manufacturer_list.first}first_item{else}item{/if}">
<a href="{$link->getmanufacturerLink($manufacturer.id_manufacturer, $manufacturer.link_rewrite)}" title="{l s='More about' mod='blockmanufacturer'}{$manufacturer.name}"> <img src="{$img_manu_dir}{$manufacturer.id_manufacturer}.jpg"><span>{$manufacturer.name}<span></a>
</li>
{/if}
{/foreach}
Сначала с учетом массива $ производителей это будет цикл внутри <li>
максимум в 4 раза и будет создавать 4 <img>
. И затем, когда он достигнет 4-го индекса, он сделает новый тег <li>
.
Спасибо за помощь!
awesome это работает! благодаря! – Harold
'итерация - 1' почему не просто использовать индекс? –
Потому что вы можете выполнять итерацию карты (ассоциативный массив/строковые ключи), которая не будет работать для индекса. – rodneyrehm