0

我怎样才能对不同的产品有不同的看法?例如,我想要产品的默认视图,但对于某个产品,使用我自定义创建的视图。

所以我是这样想的。我有 ProductController,它现在使用默认的 product.tpl。但是对于我选择的某些产品,我希望它使用另一个以不同方式显示信息的模板文件。也可能从管理员那里选择产品。

4

2 回答 2

0

您可以在控制器中创建一个关联数组,其中包含您的 tpl 文件和要排除的产品 id,作为键:

$excludedProducts = array(
'180'=>'template1.tpl',
'271'=>'template2.tpl',
'341'=>'template3.tpl',

)

并检查当前产品是否存在于该数组的键中array_key_exists(),然后根据条件重定向。

于 2013-09-26T11:33:19.317 回答
0

一件简单的事情是直接用 smarty 检查产品的 id,并相应地更改 html。

另一种方式,如果您想使用不同的模板文件,您可以覆盖 ProductController 及其 initContent() 方法。模板设置在最后一行:

$this->setTemplate(_PS_THEME_DIR_.'product.tpl');

因此,您可以检查 id/ids 并相应地使用不同的模板。

希望能帮助到你。

于 2013-09-26T11:22:24.893 回答