(将来の参照のためにhttp://forum.dwoo.org/viewtopic.php?id=617から私の答えをコピーします)
ええ、できますが、あなたはあなたが何を望んでいるかを正確に知る必要があります。
$ nav_headerは配列であるため、たとえば{$ nav_header.0.template.imagefolder}を実行することで、ループの外側からアクセスできます。これにより、配列の最初の項目に必要なものが得られます。
ループ内からトップレベルの変数にアクセスする場合、つまりメインデータノードに$pathと$nav_headerがある場合は、{$_。path}を実行します。これは{$_parent.pathと同等です。 }
もう1つの方法は、配列のどこを見ればよいかわからない場合、ループ中に変数を保存して、そこから変数にアクセスできるようにすることですが、親スコープに割り当てることはできません。現時点では、スコープを移動しないため、foreachを使用する必要があります。
{foreach $nav_header elem}
<li><a href="{$elem.link}"><img src="{$elem.template.imagefolder}/{$elem.icon}" width="48" height="48" border="0" alt="{$elem.title}" /><br />{$elem.title}</a></li>
{if $elem.title == "foo"}{$folder = $elem.template.imagefolder}{/if}
{/foreach}
{$folder}
お役に立てれば。