Référencer un module magento

novembre 8, 2009 2 Commentaires

La première étape de création d’un modulemagento est son référencement au sein de L’application. Nous allons voir dans ce tutoriel les différentes façons d’ajouter un module à magento.

Le dossier des modules

Magento commence par lire le contenu du dossier app\etc\modules\

Les modules sont référencés comme ceci :
-NameSpace + le nom du module => Monnamespace_monnomdemodule.xml
ou
-NameSpace + All si le (NameSpace contient plusieurs modules) =>Monnamespace_All.xml

Créer un module

La première étape de création d’un module est sont référencement au sein de magento. Vous devez allez dans le dossier

app\etc\modules\

Et rajouter votre module comme ceci NameSpace + Nomdumodule => Monnomdossier_Monmodule.xml.
A l’intérieur de ce fichier, placez ce code :

<?xml version="1.0"?>
<config>
    <modules>
        <Monnamespace_Monmodule> <!-- NameSpace( dossier) + nom du module-->
            <active>true</active>       <!--actif ou pas-->
            <codePool>local</codePool>  <!--nom du dossier où se trouve le nameSpace -->
        </Monnamespacer_Monmodule>
    </modules>
</config>

Explication du code

Magento référence le module et le met en actif. Grâce à « codePool », magento ira le chercher dans le dossier local

 \app\code\local\

C’est à l’intérieur de ces noeuds xml que l’on définit l’emplacement du module grâce à

 <codePool>core</codePool>

Trois emplacements sont disponibles :
community : module de la communauté
core : module de magento
local : module que vous développez

Vous pouvez retenir ceci le module se trouve dans

 <codePool>local</codePool> + <Monnamespace_Monmodule> => app\code\local\Monnomdossier\Monmodule

Cette procédure est bien pour l’ajout d’un seul module dans un nouveau NameSpace. Quand on crée plusieurs modules, on peut les référencer dans un seul fichier =>Namespace_All.xml.

Créer plusieurs modules dans un même nameSpace

Pour référencer plusieurs modules, on peut les regrouper dans un fichier de ce type :
NameSpace + All => Monnamespace_All.xml, c’est la cas pour les modules principaux de magento, ils sont regroupés dans Mage_All.xml. Le fichier Mage_All.xml contient toutes les déclarations de modules principaux de magento

<Mage_Admin> , <Mage_Customer> ,<Mage_Catalog>...etc

Pour référencer plusieurs modules au sein du même namespace, il suffit de placer ce code à l’intérieur du fichier Monnamespace_All.xml :

   <config>
    <modules>
<Namespacemodule_Nomdumoduleun>
...
</Namespacemodule_Nomdumoduleun>
 
<Namespacemodule_Nomdumoduledeux>
...
</Namespacemodule_Nomdumoduledeux>
    </modules>
</config>

Une fois référencés les modules sont activables et désactivables par le back office de magento => systeme => configuration => avancé => avancé => Désactiver la sortie des modules.

Les modules visibles dans le back office de magento

Les modules visiblent dans le back office de magento

Suite à ce tutoriel, vous pouvez lire les tutoriels sur la création de modules magento.

Code
2 commentaires : “Référencer un module magento”
  1. frinux dit :

    Pour le dernier point, le Back Office ne marche pas systématiquement pour activer/désactiver les modules. Il faut des fois le faire à la main dans le XML…

  2. cédric rousset dit :

    Merci pour la précisions. Je n’ai jamais rencontre de problème pour activer ou désactiver un module via le back office si ça m’arrive je le ferais vis le XML.

Poster un commentaire

(obligatoire)

(obligatoire)