Header magento : ajouter le panier

novembre 24, 2009 10 Commentaires

Suite au précédent tutoriel sur l’intégration d’un site magento « header magento », voici un complément sur l’agencement du « header » . Comment ajouter le panier dans le header de magento, le panier qui est par défaut dans la colonne droite avec la gestion des derniers articles ajoutés, le prix et réglez vos achats. Cet article est dans la rubrique création de site magento, nous sommes toujours sur l’intégration de la maquette du site buggy.

Ajout d’un block dans le layout page.xml

Dans le noeud xml header rajoutez une référence au panier « checkout ».

<block type="page/html_header" name="header" as="header">
  <block type="checkout/cart_sidebar" name="panierheader" template="buggy/panierheader.phtml"/>
  <block type="page/template_links" name="top.links" as="topLinks"/>
  <block type="page/switch" name="store_language" as="store_language" template="page/switch/languages.phtml"/>
  <block type="core/text_list" name="top.menu" as="topMenu"/>
</block>

Dupliquez le template sidebar.phtml qui se trouve dans le dossier « template\checkout\cart\ » copiez-le dans un nouveau dossier ici j’ai choisi template/buggy/panierheader.phtml ». Modifier le code du template afin de ne pas afficher les derniers articles ajoutés, sinon le header s’agrandirait lors de l’ajout de produits dans le panier.

Appel du nouveau template dans header.phtml

Placez ce code dans le header.phtml « template\page\html\header.phtml »

<?php  echo $this->getChildHtml('panierheader') ?>

La méthode getChildHtml() placera le template dans le header ( pour en savoir plus sur la méthode getChildHtml() )
Le panier est déplacé dans le header :

Le panier est isolé dans le header de magento

Le panier est déplacé dans le header de magento

Pour ne pas faire de doublon ne pas oublier de supprimer le panier dans la colonne de droite.
Dans le prochain tutoriel consacré à l’intégration de la maquette nous verrons comment modifier le footer magento et la partie contenu de la page d’accueil.

Ajouter juste un lien et le nombre d’article dans le panier

	<div class="header_top_cart"><a href="<?php echo $this->getUrl('checkout/cart'); ?>" title="Mon panier(<?php echo Mage::helper('checkout/cart')->getCart()->getItemsCount(); ?>)">Mon panier (<?php echo Mage::helper('checkout/cart')->getCart()->getItemsCount(); ?>)</a>     </div>

Liens Compélmentaires

header magento : integration maquette

Création de site magento
10 commentaires : “Header magento : ajouter le panier”
  1. Seve dit :

    Bonjour comment tu as fait pour avoir un header qui prend toute la largeur de la page.

  2. pascal dit :

    Salut,
    j’ai utilisé la méthode ci-dessus pour intégrer le panier au header. Ca marchait nickel.
    Or apres avoir mis en forme les pages de commande et avoir passé une commande de test, le panier ne s’affiche plus dans le header.
    Je voulais savoir si le fait d’avoir passé une commande change quelque chose dans la gestion du panier dans magento d’ou le probleme d’affichage du panier, ou est ce que c’est moi qui ai fait une boulette en modifiant des fichiers.

    Merci de ta réponse.

  3. cédric rousset dit :

    Bonjour,
    Il ne faut pas appeler le panier avec le même nom

    <block type="checkout/cart_sidebar" name="panierheader" template="buggy/panierheader.phtml"/>

    Quel code as tu mis ?

  4. pascal dit :

    Salut,
    j’ai repris la meme méthode que ci-dessus

    sauf que j’ai mis le phtml dans un dossier homepage au lieu de buggy.

    Pascal

  5. signs dit :

    salut Cédric j’ai un petit soucis avec mon panier dans le header, je ne trouve pas dans quel layout supprimer le panier de droite.
    le seul endroit ou j’ai trouver c dans le checkout, mais soucis si je supprime je me retrouve avec la page /checkout/cart/ blanche

  6. cédric rousset dit :

    Bonjour Signs,
    C’est bien dans checkout.xml que tu dois le supprimer. Comment tu l’a supprimé ?

  7. signs dit :

    dans mon checkout j’ai ceci

    [code]

    simplecheckout/cart_item_renderercheckout/cart/sidebar/default.phtml
    groupedcheckout/cart_item_renderer_groupedcheckout/cart/sidebar/default.phtml
    configurablecheckout/cart_item_renderer_configurablecheckout/cart/sidebar/default.phtml

    [/code]

    j’ai juste supprimé ainsi que le dernier

  8. signs dit :

    comment je dois faite pour insérer du code ici?

  9. cédric rousset dit :

    Pour supprimer le panier de la colonne

    <reference name="left">
    <remove name="cart_sidebar"/> 
    </reference>

Poster un commentaire

(obligatoire)

(obligatoire)