Harici kullanım için Magento yönlendirmesi dışında bir blok yükleyin / alın


15

Harici bir web sayfam var ve bu harici sayfada başlık olarak kullanmak için site başlık bloğunu Magento çerçevesinden çekmeye çalışıyorum. Şimdiye kadar sahip olduğum şey bu:

// 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');

Ancak yürütme burada durur ve hata iletisi almıyorum. Amacım page.xml mizanpaj dosyasından Mage_Page_Block_Html_Headeryüklemek <block type="page/html_header" name="header" as="header">ve tüm içeriğini kullanmak için kullanabileceğimi düşünüyorum blok çekmek . Bu XML etiketi içine sarılır

<default translate="label" module="page">
  <block type="page/html" name="root" output="toHtml" template="page/1column.phtml">

etiketleri, belki bir şekilde belirtmem gerekiyor? Ne yaptığımı ve buradan nereye gideceğimi bilmiyorum.


Bu kod çalışıyor ama çıkış düğmesi ile ilgili bir sorun var, bazı te aynı sorunu var? Saygılarımızla
Massimo Camoni

Yanıtlar:


12

Gizli malzemeyi buldum .. ve Mage::app()->loadArea('frontend');

<?php
include_once "app/Mage.php";
umask(0);
Mage::app()->loadArea('frontend');

$layout = Mage::getSingleton('core/layout');

//load default xml layout handle and generate blocks
$layout->getUpdate()->load('default');
$layout->generateXml()->generateBlocks();

//get the loaded head and header blocks and output
$headBlock = $layout->getBlock('head');
$headerBlock = $layout->getBlock('header');
echo $headBlock->toHtml() . $headerBlock->toHtml();

@Benmarks teşekkürler!


3

Orada% 99 sensin. Blokta toHtml () öğesini çağırmanız ve ardından sonucu görmek için yankılanmanız gerekir:

<?php
// initialize Magento
$rootPath = dirname(dirname(__FILE__));
$mageInc = $rootPath . "/app/Mage.php";
include_once $mageInc;

Mage::app('admin')->setCurrentStore(0);

echo $headerBlock = Mage::app()->getLayout()->createBlock('page/html_header')->toHtml();

Evet, denedim ama hiçbir şey. Bu cevap olsa da, yeni bir kurulumda denedim ve işe yarıyor. Teşekkürler.
Nick Rolando

Bu kod çalışma var, ancak bana site başlığı olan bir şey yakın vermiyor. Site üstbilgisinde çeşitli logolar, menüler ve bağlantılar bulunur. Bu bana başlıktaki birçok resimden birini veriyor. Belki de doğru şekilde yüklemiyorum?
Nick Rolando
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.