magento产品列表

时间:2011-05-10 11:01:35

标签: magento

当url类似于mysite.com/category.html?flag=1时,我需要加载不同的布局页面(two_column而不是one_column) 所以我对getParam('flag')进行了覆盖。 如何以编程方式替换布局(不在xml上设置这样的自定义设计)?

if ($flag) {
 // set custom_layout.phtml
} else {
 // set 1column.phtml
}

1 个答案:

答案 0 :(得分:0)

您需要加载布局并修改root块使用的模板。有点像:

$template = "page/3columns.phtml";
$this->loadLayout();
$this->getLayout()->getBlock('root')->setTemplate($template);
$this->renderLayout();

这需要做一个控制器动作。