список продуктов magento - PullRequest
0 голосов
/ 10 мая 2011

Мне нужно загрузить другую страницу макета (two_column вместо one_column), когда url похож на mysite.com/category.html?flag=1 Итак, я сделал переопределение getParam ('flag').Как я могу заменить макет программно (без установки на xml такого нестандартного дизайна)?

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

1 Ответ

0 голосов
/ 10 мая 2011

Вам необходимо загрузить макет и изменить шаблон, используемый блоком root.Что-то вроде:

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

Это должно быть сделано действием контроллера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...