我最近问了一个关于如何在Smarty中传递变量的问题:Smarty - include template and update an existing variable
它对我来说很好,但现在我需要的东西比我看到的要先进一些。
在一个模板中,我将图库滑块模板附加为变量:
{$gallery_slider}
在图库模板(这是其他网页的常规文件,因此我不想更改它)中,jQuery滑块带有选项。我想更改可见幻灯片的数量。现在它看起来像这样:
visible : {$partial.visible|default:5},
如果我在模板中将默认值更改为3,它可以正常工作,但我想从调用图库的模板级别执行此操作 - 在{$ gallery_slider}之上。
我该怎么做?我试过了:
{assign var="partial.visible" value="3"}
和
{assign var="partial.visible|default:3"}
和其他一些组合,它们都不起作用。
我很欣赏一些建议。
答案 0 :(得分:1)
我不知道你如何将它用作变量(可能是fetch
方法),但在这种情况下你应该使用include
:
{include file="gallery.tpl" items=5}
{include file="gallery.tpl" items=3}
现在如果在gallery.tpl
中你有:
Here I can display {$items} in my gallery<br />
输出将是:
Here I can display 5 in my gallery
Here I can display 3 in my gallery
所以你可以使用这个变量并在循环(或其他控制结构)中使用这个变量而没有任何问题