我想用 smarty 实现这样的列表。
<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}
首先使用给定的数组 $manufacturers 它将在 <li>
中循环最多 4 次,将创建 4 <img>
.然后,当它到达第 4 个索引时,它将创建一个新的 <li>
。标签。
感谢您的帮助!
最佳答案
您想在每个 li 标签中显示 4 张图片吗?
<ul>
{foreach from=$manufacturers item=manufacturer name=manufacturer_list}
{if $smarty.foreach.manufacturer_list.index % 4 == 0}
<li>
{/if}
<a><img></a>
{if $smarty.foreach.manufacturer_list.index % 4 == 0 || $smarty.foreach.manufacturer_list.last}
</li>
{/if}
{/foreach}
</ul>
关于php - Smarty - foreach 循环 4 次并创建一个新列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11070085/