Я искал в Интернете и не мог найти, как это сделать.
Я хочу добавить статический блок, который я создал ранее в admin, на cms-страницу. Это работает с использованием любой из этих строк:
{{block type="cms/block" block_id="my_block_id"}}
{{block type="cms/block" block_id="my_block_id" template="cms/content.phtml"}}
Теперь я хочу использовать пользовательский шаблон, а именно:
{{block type="cms/block" block_id="my_block_id" template="modulename/custom-template.phtml"}}
Когда я помещаю это в cms-страницу таким образом, блок показывается, но тег "template" полностью игнорируется - cms/content.phtml
используется.
ЧТО Я ПОПЫТАЛ,
я попытался расширить класс Mage_Block_Cms_Block и добавить setTemplate($this->getTemplate());
к _toHtml()
-функции. Эффект тот же, что и выше - cms/content.phtml
используется.
Я пытался расширить класс Mage_Core_Block_Template; Конечно, я могу установить шаблон здесь, но у меня проблемы с получением статического блока. Я не могу найти, как получить блок по идентификатору блока.
ЧТО ЭТОТ ВОПРОС О / НЕ О
Я знаю, как сделать это с PHP.
Я знаю, как это сделать с XML-файлами.
Для этого вопроса крайне важно, чтобы с блоками можно было управлять.
Я использую Magento CE 1.7.0.0.
Спасибо за ваше время!
источник
Вы пробовали с
cms/widget_block
? Этот блок простирается отMage_Core_Model_Template
, так что может быть возможно сделать то, что вы пытаетесь сделать.источник