スマートデータに基づいてスマートブロック名を定義したいのですが、できないようです。
例:
{foreach $array as $code}
{block name=block_$code}
<div id='{$code}'></div>
{/block}
{/foreach}
私の目的は、子テンプレートによって特定のblock_$codeブロックを拡張することです。これは可能ですか、それともこれを行うために使用できる他のトリックがありますか?
ありがとう。
2011年から次のリンクを見つけることができました。これは、当時は不可能であったことを示しています。私はそれがまだそうではないと思う:
http://www.smarty.net/forums/viewtopic.php?t=19805&highlight=block%20variable%20name
良いニュースは、それなしでコードを機能させる方法を理解できたことです。foreachで定義されたdivの1つだけをオーバーライドできるようにしたかったのです。これが私がそれを行う方法です:
親:
{foreach $array as $code}
{block name=code_loop}
<div>Normal Stuff</div>
{/block}
{/foreach}
子:
{block name=code_loop}
{if $code == 'code of interest'}
<div>New Stuff</div>
{else}
{$smarty.block.parent}
{/if}
{/block}