0

我一直在阅读 smarty 中的最佳方法,将循环中的每 4 个项目设置为一个类,并且遇到了“交互”的使用,但是下面的示例代码有点工作,但它将类应用于第 4 个之后的所有内容一个,我想在每 4 节课上申请最后一堂课。使用这种方法可以吗?

{foreach from=$product.image_pairs item="image_pair" name="additional_images"}
    {if $image_pair}
        {if $image_pair.image_id == 0}
            {assign var="img_id" value=$image_pair.detailed_id}
        {else}
        {assign var="img_id" value=$image_pair.image_id}
        {/if}
        {if $smarty.foreach.additional_images.iteration is div by 4}
            {assign var="last_image" value="last"}
        {/if}
        {include file="common_templates/image.tpl" images=$image_pair object_type="detailed_product" link_class="cm-thumbnails-mini $last_image" image_width=$th_size image_height=$th_size show_thumbnail="Y" show_detailed_link=false obj_id="`$preview_id`_`$img_id`_mini" make_box=true wrap_image=true}
    {/if}
{/foreach}

结果:

<a class="">content</a>
<a class="">content</a>
<a class="">content</a>
<a class="">content</a>
<a class="last">content</a>
<a class="last">content</a>
<a class="last">content</a>
4

1 回答 1

0
{assign var="last_image" value="last"}

将在第 4 次迭代时分配此变量,这将适用于下一次迭代。您应该else向该变量添加并分配空字符串。

于 2013-06-09T22:01:13.553 回答