Variable aus der config.xml an Template übergeben

13.11.2012 | Magento

In der indexAction wird ein neuer Block inchoo.simple_contact erzeugt:


public function indexAction()
 {
  //Get current layout state
  $this->loadLayout();
  $block = $this->getLayout()->createBlock(
            'Mage_Core_Block_Template',
            'inchoo.simple_contact',
  array(
                'template' => 'inchoo/simple_contact.phtml'
                )
                );
                $this->getLayout()->getBlock('content')->append($block);
                $this->getLayout()->getBlock('inchoo.simple_contact')->assign('intro', Mage::getstoreConfig('contact/intro'));
                //$this->getLayout()->getBlock('right')->insert($block, 'catalog.compare.sidebar', true);
                $this->_initLayoutMessages('core/session');
                $this->renderLayout();
 }

dann wird diesem eine Variable intro übergeben:


 $this->getLayout()->getBlock('inchoo.simple_contact')->assign('intro', Mage::getstoreConfig('contact/intro'));

Diese kann dann im Template einfach so ausgelesen werden:

<?php echo $intro;?>
die Daten befinden sich in der config.xml:

<?xml version="1.0"?>
<config>
 <modules>
  <Inchoo_SimpleContact>
   <version>0.1.0</version>
  </Inchoo_SimpleContact>
 </modules>
 <frontend>
  <routers>
   <JustSomeFreeRouterNameHereNo1>
    <use>standard</use>
    <args>
     <module>Inchoo_SimpleContact</module>
     <frontName>inchoo-simplecontact</frontName>
    </args>
   </JustSomeFreeRouterNameHereNo1>
  </routers>
 </frontend>
 <default>
  <contact>
   <intro>
    ... dieser Kontakt Text kommt aus der etc/config.xml des Moduls ....
   </intro>
  </contact>
 </default>
</config>