Tutoriel - Développer un module pour Magento - Où commencer ? [Partie 1]

The page you requested does not exist. A search for blog benjamin bellamy resulted in this page.

Avez-vous déjà lu la liste complète des fonctionnalités que Magento propose en standard ? Elle est énorme. Et cela devient encore plus impressionnant lorsque vous regardez sur Magento Connect et toutes les extensions qui s'y trouvent.
Cependant, si vous êtes en train de lire ce billet, vous êtes probablement à la recherche de quelque chose qui n'est pas encore disponible.
Ou alors vous êtes un développeur qui aime juste mettre les mains dans le cambouis.
Dans un cas comme dans l'autre, que cela soit pour des raisons de business ou par esprit hacker, developper un module Magento est fun.

Mettons en place quelque chose de vraiment vraiment simple. Le module.
Vous vous demandez ce que ce sacré module va faire. Et bien dans ce premier épisode il ne va absolument rien faire, rien d'autre que d'être déclaré dans votre site Magento !

Où commencer?

Jetez un œil aux répertoires de votre installation de Magento. Dans app > code > local,
créez un répertoire, qui sera un peu le conteneur de vos modules, dans Magento on l'appelle en général pool de code (code pool). Si vous ne savez pas comment le nommer, le nom de la société pour laquelle vous travaillez est en général une bonne option. Ça l'est dans mon cas. ;-)

Ainsi, créons le :

$ cd app/code/local/
$ mkdir Baobaz

Là, dans ce conteneur, nous devrions créer le module. Dans le cadre de ce blog appelons-le "Reader" (dans les épisodes suivants le choix de ce nom devrait se clarifier, si tel n'est pas le cas... eh bien... ça sonne toujours bien ! ;-) )

$ cd Baobaz
$ mkdir Reader

Jusque là, tout va bien. L'étape suivante est un peu plus complexe mais toujours relativement simple. Changeons de répertoire...

$ cd ../../../etc/modules/

Euh... où sommes-nous ?

$ pwd /Your/favorite/place/for/web/projects/magento/app/etc/modules/

Maintenant, vous devez avertir Magento de l'existence de votre module. Pour ce faire vous allez devoir créer un fichier XML. Lancez votre éditeur favori et créez un fichier nommé Baobaz_Reader.xml (comme vous avez sûrement deviné, le nom est formé sur le schéma <nom_du_conteneur>_<nom_du_module>.xml

$ vi Baobaz_Reader.xml

Maintenant collez ceci dans le fichier :

<?xml version="1.0"?>
<config>
    <modules>
        <Baobaz_Reader>
            <active>true</active>
            <codePool>local</codePool>
        </Baobaz_Reader>
    </modules>
</config>

Sauvez le fichier. Et voilà ! That's one small step for a man, one giant leap for man...gento. :-)

Afin d'être sûr que Magento ait bien pris en compte votre module, rendez-vous sur le panneau d'administration. Allez sur System > Configuration, sélectionnez Advanced.

Vous devriez voir Baobaz_Reader en haut (ou quelque part par là) de la liste "Disable modules output".

OK, OK, OK... Je reconnais que notre module ne réalise rien pour le moment mais soyez patient, dans les épisodes suivants nous ajouterons des fonctionnalités plus utiles.

À suivre...

Traduction par Benjamin Bellamy

11 comments on "Tutoriel - Développer un module pour Magento - Où commencer ? [Partie 1]"

Portrait de alain mouafo
alain mouafo (visiteur) - lun, 14/12/2009 - 12:16:

je n'ai pas compris où il faut sauvegarder le fichier xml et aussi, le chemin "$ pwd /Your/favorite/place/for/web/projects/magento/app/etc/modules/", je n'y comprends rien pouvez me clarifier son usage?

cordialement

Portrait de Laurent Clouet
Laurent Clouet - mar, 15/12/2009 - 19:59:

Le fichier xml doit être sauvegardé dans le dossier app/etc/modules de votre installation Magento.
L'usage de ce fichier xml est de déclarer et activer l'extension.

Portrait de Duael
Duael (visiteur) - mar, 11/05/2010 - 17:29:

Merci pour ce tutoriel.

A quand la suite ? :)

Portrait de Pierre FAY
Pierre FAY (visiteur) - ven, 06/08/2010 - 18:36:

sinon j'ai crée un tutoriel qui ressemble un peu sur http://pierrefay.fr/creez-module-magento-guide-developpeur-francais-1 j'espere que ca pourra aider du monde a démarrer.

Merci a Baobaz grâce a qui j'ai pu démarer a développer sous magento, sans votre blog j'aurai pas été bien loin...

Portrait de Florent b
Florent b (visiteur) - ven, 11/02/2011 - 20:26:

Bonjour,
Je viens de faire créer un site de vente en ligne par une entreprise, ils ont créé ca avec magento.
Seulement il y a des articles que je souhaite présenter sur le site mais pas vendre.
Savez vous comment je peux faire pour dévollopper un module me donnant la possibilité de mettre le message "nous consulter" à la place du prix et enlever le prix et la possibilité d'acheter l'article?
Merci

Portrait de Marcus
Marcus (visiteur) - jeu, 18/08/2011 - 09:11:

Trés bon post. J'ai tout suivi, c'est bon. Y a t il une suite...? :)

Merci.

Portrait de Jeremy joron
Jeremy joron (visiteur) - mer, 07/12/2011 - 22:49:

Je suis entrain de développer ma première boutique sous magento et en effet ce genre d'article aide vraiment beaucoup à comprendre le fonctionnement de magento!

Portrait de Anonymous
Anonymous (visiteur) - mer, 11/01/2012 - 18:18:

A démarcation pratique individu n’est voilé pétard son PC et les exégèse sont la vertu de sien ouvrier qui sont leader de sien propos

Portrait de Anonymous
Anonymous (visiteur) - mer, 11/01/2012 - 18:19:

A liaison notions être n’est voilé derrière son PC et les commentaires sont la fonds de leurs gazetier qui sont solidaire de leurs propos

Portrait de Anonymous
Anonymous (visiteur) - mer, 11/01/2012 - 18:20:

A haie science moineau n’est anonyme siège son PC et les commentaires sont la propriétés de sien instaurateur qui sont répondant de leurs propos

Portrait de dodo
dodo (visiteur) - mar, 17/01/2012 - 14:27:

L'usage de ce fichier xml est de déclarer et activer labatterie l'extension.

Poster un nouveau commentaire

Le contenu de ce champ ne sera pas montré publiquement. If you have a Gravatar account associated with the e-mail address you provide, it will be used to display your avatar.
  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.
  • Allowed HTML tags: <p> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Les lignes et les paragraphes vont à la ligne automatiquement.

Plus d'informations sur les options de formatage