1

我有一个包含在其他 tpls 中的 tpl(实际上几乎是 70 个)。问题是如果这个模板被包含在给定的 DOM 元素中(作为第一个子元素),它必须做一些事情。

这是一个例子:

<div id="container">
    {include file="mytpl.tpl"
    param1="aValue1"
    param2="aValue2"
    }
</div>

使用 Javascript 是不可能的,因为这会影响后端。

另外,我知道我可以向我的 tpl 传递一个额外的参数。问题是我必须将该指令添加到所有近 70 个调用该 tpl 的文件中。

所以,我想做的是询问它的父母是否是“容器”并且它是它的第一个孩子。

一档解决方案:

{include file="mytpl.tpl"
    param1="aValue1"
    param2="aValue2"
    paramX="X"
}

然后,在 tpl..

{if $paramX eq 'X'}...{/if}
4

1 回答 1

0

一种可能的方法:
您可以将您variable/data/info放入一个$_SESSION数组中,然后使用:

{$smarty.session.YOUR_VARIABLE}
于 2013-07-26T20:50:04.047 回答