Eu tenho uma página da web externa e estou tentando extrair o bloco de cabeçalho do site da estrutura Magento para usá-lo como cabeçalho nesta página externa. Isto é o que eu tenho até agora:
// initialize Magento
$rootPath = dirname(dirname(__FILE__));
$mageInc = $rootPath . "/app/Mage.php";
include_once $mageInc;
Mage::app('admin')->setCurrentStore(0);
$headerBlock = Mage::app()->getLayout()->createBlock('page/html_header');
//also tried
//$headerBlock = Mage::app()->getLayout()->createBlock('page/html_header', 'header');
A execução para aí, no entanto, e não recebo mensagens de erro. Meu objetivo é puxar bloco Mage_Page_Block_Html_Header
, que acho que posso usar para carregar <block type="page/html_header" name="header" as="header">
e todo o seu conteúdo do arquivo de layout page.xml. Essa tag XML está encapsulada
<default translate="label" module="page">
<block type="page/html" name="root" output="toHtml" template="page/1column.phtml">
tags, então talvez eu precise especificar isso de alguma forma? Não tenho certeza do que estou fazendo de errado e para onde ir a partir daqui.
magento-enterprise
blocks
enterprise-1.13
Nick Rolando
fonte
fonte
Respostas:
Eu encontrei o ingrediente secreto .. e é
Mage::app()->loadArea('frontend');
Obrigado @benmarks!
fonte
Você está 99% lá. Você precisa chamar toHtml () no bloco e repetir para ver o resultado:
fonte