Déclaration et configuration

Déclaration

Les modules sont tous déclarés dans le dossier app/etc/modules.

  • Copier / coller un fichier existant (pas le Mage_All.xml)
  • L'appeler Formation_Test.xml
  • Modifier le codePool en local

Pour le reste de la formation, notre namespace sera Formation et le nom de notre module sera Test.

Le module doit apparaitre dans Système > Configuration > Avancé.

Configuration

Dans le module (app/code/local/Formation/Test), créer un fichier etc/config.xml.

Noeuds de base

<?xml version="1.0"?>
<config>
    <modules>
        <Formation_Test>
            <version>1.0.0</version>
        </Formation_Test>
    </modules>
    <global>
        <blocks>
            <!-- Déclaration des blocks -->
        </blocks>
        <helpers>
            <!-- Déclaration des helpers -->
        </helpers>
        <models>
            <!-- Déclaration des models -->
        </models>
    </global>
    <frontend>
        <routers>
            <!-- Déclaration des routes -->
        </routers>
        <layout>
            <!-- Ajout de fichiers de layout -->      
        </layout>
        <translate>
            <!-- Ajout d'un fichier de traduction -->        
        </translate>
    </frontend>

    <adminhtml>
        <!-- Idem frontend, mais pour le back-office -->
    </adminhtml>
</config>

Exemple de déclaration des blocks

<global>
    <blocks>
        <formation_test>
            <class>Formation_Test_Block</class>
        </formation_test>
    </blocks>
</global>

Une fois déclaré, tous les blocks présents dans app/code/local/Formation/Test/Block seront pris en compte et utilisables dans nos développements.

Le principe est exactement le même pour les helpers et les models.