Pesquisei na web e não consegui encontrar como fazer isso.
Quero adicionar um bloco estático que eu criei no admin antes a uma página do cms. Isso funciona usando uma destas linhas:
{{block type="cms/block" block_id="my_block_id"}}
{{block type="cms/block" block_id="my_block_id" template="cms/content.phtml"}}
Agora eu quero usar um modelo personalizado, ou seja:
{{block type="cms/block" block_id="my_block_id" template="modulename/custom-template.phtml"}}
Quando o coloco na página cms assim, o bloco é mostrado, mas o "template" -tag é completamente ignorado - cms/content.phtml
é usado.
O que
tentei Tentei estender a classe Mage_Block_Cms_Block e adicionar setTemplate($this->getTemplate());
à _toHtml()
função O efeito é o mesmo que acima - cms/content.phtml
é usado.
Eu tentei estender a classe Mage_Core_Block_Template; é claro que posso definir um modelo aqui, mas tenho problemas para obter o bloco estático. Não consigo encontrar como obter o bloco pela identificação do bloco.
O QUE É ESTA PERGUNTA / NÃO SOBRE
Eu sei como fazer isso com PHP.
Eu sei como fazer isso com arquivos XML.
É crucial para essa pergunta que os blocos possam ser gerenciados no back-end.
Eu corro o Magento CE 1.7.0.0.
Obrigado pelo seu tempo!
fonte
Você já tentou
cms/widget_block
? Esse bloco se estende deMage_Core_Model_Template
, portanto, pode ser possível fazer o que você está tentando fazer.fonte