2010-12-06 15 views
15

J'essaie d'ajouter un bloc statique à la page d'accueil d'un site Magento en utilisant le fichier XML de mise en page.Bloc statique sur la page d'accueil dans Magento

Je peux voir comment ajouter et supprimer un bloc dans une référence, mais j'ai du mal à voir comment l'ajouter pour une page spécifique, c'est-à-dire la page d'accueil.

<block type="cms/block" name="home-page-block"> 
    <action method="setBlockId"><block_id>home-page-block</block_id></action> 
</block> 

Comment puis-je envelopper ce code dans le fichier page.xml pour qu'il soit utilisé sur la page d'accueil?
Ou y a-t-il un meilleur moyen? La page d'accueil devrait-elle être un nouveau modèle?

Répondre

29

Dans les fichiers de disposition utilisés par votre thème, ajoutez les éléments suivants.

<cms_index_index> 
    <reference name="content"> 
    <block type="cms/block" name="home-page-block"> 
     <action method="setBlockId"><block_id>home-page-block</block_id></action> 
    </block> 
    </reference> 
</cms_index_index> 

cms_index_index est spécifique à la page d'accueil.

+1

Merci, je l'ai eu à travailler en ajoutant une balise de référence autour du bloc et en donnant à la référence un attribut de nom de contenu. Cela signifie-t-il qu'il doit y avoir un appel dans le modèle .phtml à une "référence" et que tout ce qui porte ce nom est rendu? –

+1

J'ai oublié la partie de référence! Quelque part dans chaque modèle de page .phtml, il y aura un 'getChildHtml ('content')' en place. C'est pourquoi ça marche. – clockworkgeek

+0

Merci encore, cela répond à ma question initiale, mais je ne semble pas pouvoir ajouter getChildHtml ('home_flash') dans le fichier .phtml et utiliser dans le fichier XML. Des idées pourquoi? –