2010-11-21 20 views
0

Bir şablon başka bir şablonda her eklendiğinde farklı değişkenler kullanmak için smarty stratejisi nedir?Smarty - aynı şablon farklı içerik

İşte demek istediğim. Basit bir gezinme listesi oluşturan akıllı bir şablona sahibim.

<ul class='linkList'> 

    <li> 

    <h3>{$title}</h3> 

    <ul> 
     {foreach $links as $d} 
     <li><a title='{$d...}' href='{$d....}'>{$d.text}</a></li> 
     {/foreach} 
    </ul> 

    </li> 

</ul> 

Ana şablonumda birkaç kez eklemek ve her defasında farklı değerler iletmek istiyorum. Bunu yapmak için hangi stratejiyi kullanacağımı bilmiyorum.

Bu

$smarty->assign('links',array(.....); 
$smarty->assign('title','My first link list'); 

$smarty->assign('links',array(different values); 
$smarty->assign('title','My second link list'); 

gibi benim php dosyasında değişkenleri atamak ve sonra ben sadece değerlerin ikinci sürü iki kez aynı listeyi alacak iki kez şablonu eklerseniz.

cevap

1

{include} etiketi, çağrı değişkenleri geçmesine izin verir:

{include 'linklist.tpl' title="Sample Links 1" links=$link_array1} 
{include 'linklist.tpl' title="Sample Links 2" links=$link_array2} 

Aksi halde, sana {assign} veya ata ({$var=value}) kısa form şablonunu eklemeden önce birini kullanabilirsiniz eminim.

İlgili konular