Ajouter un bloc statique dans Magento multilingue

Le script de e-commerce Magento vous permet de rajouter des blocs avec le contenu que vous désirez dans votre site. Vous pouvez ainsi changer des parties du web design, et contrôler ses parties depuis l’administration. Nous allons voir comment procéder étape par étape, dans le cas d’un site multilingue.
Nous allons prendre comme exemple l’ajout d’une bannière sous l’entête du site. Celle ci devant être différente suivant la langue du e-commerce.
Les étapes seront les suivantes :
- Créer vos blocs dans l’administration de Magento.
- Appeler le bloc dans le gabarit.
- Afficher le bloc dans la page.
- Les fichiers
- La modification
- Nettoyage du cache
Créer vos blocs dans l’administration de Magento
- Depuis l’administration allez dans : « CMS » > « Blocs Statiques » > « Ajouter un nouveau bloc »
- Complétez les informations pour les champs:
- Titre bloc: « Bannière haut »
- Identifiant: « banniere_haut »
- Vue magasin: sélectionnez pour quelle langue le bloc sera visible. Sélectionnez la langue du site pour laquelle vous voulez votre bannière.
- Statut : sélectionnez « Activé »
- Contenu : saisissez le code XHTML de votre bannière
Enregistrez les modifications en cliquant sur : « Sauvegardez le bloc ». Recommencez l’opération pour chacune des langues, tout en conservant dans ce cas le même identifiant.
Les blocs statiques sont maintenant configurés dans l’administration. Nous allons maintenant voir la procédure pour modifier le thème afin de l’afficher sur le site.
Appeler le bloc dans le gabarit
Il faut utiliser les layouts, fichiers de mises en page, pour appeler le code de vos blocs afin de pouvoir les afficher dans le site.
Les fichiers à modifier se trouvent dans le dossier : /app/design/frontend/theme/default/nom_de_votre_theme/layout/
Comme nous voulons afficher nos bannières sur toutes les pages du e-commerce et sous les entêtes nous devons modifier les fichiers suivants :
- cms.xml : pour l’ajout du bloc dans les pages CMS du site, comme la page d’accueil, dans l’attribut <defaut></defaut>, avant </defaut> ajouter les lignes suivantes:
<reference name="banniere_haut"> <block type="cms/block" name="banniere_haut"> <action method="setBlockId"><block_id>banniere_haut</block_id></action> </block> </reference>
- page.xml : pour l’ajout du bloc dans les pages du catalogue, après le code:
<block type="page/html_header" name="header" as="header"> ... </block>
Ajoutez le code:
<block type="cms/block" name="menu_haut" as="banniere_haut"> <action method="setBlockId"><block_id>banniere_haut</block_id></action> </block>
Après avoir appelé les blocs nous allons maintenant pouvoir les afficher dans le gabarit.
Afficher le bloc dans la page
Les fichiers
Les gabarits du site se trouve dans le dossier : /app/design/frontend/theme/default/nom_de_votre_theme/template/
Dans le dossier …/pages/, éditez les fichiers des gabarits des pages:
- 1column.phtml
- 2columns-left.phtml
- 2columns-right.phtml
- 3columns.phtml
La modification
Pour chacun d’entre eux, nous allons placer le bloc de la bannière sous l’entête des pages. Après la ligne :
<?php echo $this->getChildHtml('header') ?>
Ajoutez la ligne :
<?php echo $this->getChildHtml('banniere_haut') ?>
Nettoyer le cache
- Depuis l’administration de Magento allez dans « Système » > « Gestion du cache »
- Pour « All Cache » sélectionnez « Refresh »
- Cliquez sur « Save cache settings »
Vous pouvez maintenant visiter votre site afin de vérifier que vos bannières s’affichent pour leur langue et sur toutes les pages.
Article(s) sur le même sujet :