2012-12-21 4 views
1

Je travaille sur une extension Slider pour Magento, je veux être capable d'afficher mon curseur dans l'une de ces positions: top_left, top_right, top_center, bottom_left/right/center! et être capable de choisir cette position à partir de mon backend Admin avec une DropList ou quelque chose comme. Pouvez-vous aider s'il vous plaît :)! MerciAfficher mon Bloc en plusieurs "zone"?

Répondre

1

La meilleure solution que j'ai trouvé est d'ajouter un observateur à cet événement:

controller_action_layout_load_before

Ensuite, on charge la mise en page en elle:

public function addBlock(Varien_Event_Observer $observer) 
{ 
    $layout = $observer->getEvent()->getLayout()->getUpdate(); 
    $layout->addHandle(ThePositionYouWant); 
    return $this; 
} 

Dans votre Mise en page mis il position différente que vous voulez:

<position_name> 
    <reference name="content"> 
     <block type="BlockName" name="Name" before="-" template="YourBlockTemplate"/> 
    </reference> 
</position_name> 

    <position_name2> 
     <reference name="left"> 
      <block type="BlockName" name="Name" after="-" template="YourBlockTemplate"/> 
     </reference> 
    </position_name2> 

Et cela fonctionne. Espérons que cela aidera :)!

+0

Solution intelligente. Bien sûr, une fois que vous avez '$ layout' vous pouvez obtenir & ajouter n'importe quel bloc sans utiliser XML. – clockworkgeek

Questions connexes