Smarty foreach循环输出代码每四个项目,但只输出代码最多3次

时间:2013-07-21 08:33:03

标签: foreach smarty

好的,我有这段代码。

{foreach $listings as $id => $listing name=listing}

    {if $smarty.foreach.listing.iteration is div by 4}
        ADSENSE CODE
    {/if}

{/foreach}

这样做是每4个项目输出一次Google adsense代码。

正如您所知,Google adsense每页仅允许3个广告,所以我要求在展示广告3次后中断广告。

经过许多无果而终的谷歌搜索后,我感到难过!

请帮忙,

问候。

2 个答案:

答案 0 :(得分:1)

据我所知here 你可以用

{break}

它应该有效

另外,你可以有一个计数器和

{foreach $listings as $id => $listing name=listing}
    {if $smarty.foreach.listing.index <= 12}
       {if $smarty.foreach.listing.iteration is div by 4}
          ADSENSE CODE
       {/if}
    {/if}

{/foreach}

答案 1 :(得分:1)

好的,所以看完代码后我顿悟了。

我只想展示广告3次,所以我做了这个,它就像一个魅力。

{foreach $listings as $id => $listing name=listing}

    {if $smarty.foreach.listing.index == 4}

        ADSENSE CODE

    {/if}

    {if $smarty.foreach.listing.index == 8}

        ADSENSE CODE

    {/if}

    {if $smarty.foreach.listing.index == 12}

        ADSENSE CODE

    {/if}

{/foreach}