如何在Smarty中使用控制器中的两个不同模板?
我做了一个" if"为了这个目标(if (condition1){use template1}else{use template2})
,但我不知道如何检查条件返回" true"。
在我使用此组合的模板中:
{init_module module="catalog" action="sizesAction"}
(在sizesAction方法中有为template1.tpl分配视图) 那么如何使用template1.tpl和template2.tpl来定义它的位置。 我试着尽可能详细地描述这个问题。它是如何清晰的。
答案 0 :(得分:0)
似乎
{init_module module="catalog" action="sizesAction"}
是您的自定义Smarty插件。
所以在index.tpl你简单的地方
{init_module module="catalog" action="sizesAction"}
在init_module函数中,您可以执行以下操作:
$ntemplate = $template->createTemplate('your_template.tpl');
$ntemplate->assign ('var' , 'foo');
return $ntemplate->fetch();
您可以简单地扩展它以使用它,例如:
$x = 5;
if ($x > 2) {
$tpl = 'template1.tpl';
}
else {
$tpl = 'template2.tpl';
}
$ntemplate = $template->createTemplate($tpl);
$ntemplate->assign ('var' , 'foo');
return $ntemplate->fetch();
如果不是您要求的,您需要明确问题并提供代码示例。