Smartyで繰り返しの回数を取得(カウント)するには予約変数 {$smarty.foreach.ループ名}を使用する。
{ foreach from=$loop key="key" item="value" } 名前は{$value.name}です {/foreach}
というループ箇所がある場合は、【name="任意のループの名前"】をつけて
【$smarty.foreach.任意のループの名前.iteration】で参照する。
(なお、iteration の値は1からはじまる。)
{ foreach from=$loop key="key" item="value" name="loopname"} 名前は{$value.name}です ループ回数は{$smarty.foreach.loopname.iteration}です {/foreach}
でOK。
また5回ループするごとに何か処理を行いたい場合は {if} を使う
{ foreach from=$loop key="key" item="value" name="loopname"} 名前は{$value.name}です {if $smarty.foreach.loopname.iteration%5==0}5回繰り返しました{/if} {/foreach}