La structure d’un module Magento

Avant de vous lancer dans l'aventure magento, vérifions déja que vous avez de solides bases en programmation.

Les prérequis pour développer sous magento sont :
- avoir déjà installé Magento.
- savoir ce qu'est le pattern MVC.
- connaitre l'orienté objet en PHP (et le PHP bien sur...)
- savoir comment marche le systeme de template de magento

Vous avez les 2 premiers mais n'avez pas le 3eme, allez sur : le guide du designer magento

La structure d'un module Magento

Dans un module magento il y a 2 parties, le « code » et les « templates ». le code détermine les actions que le module va pouvoir réaliser, intérragir avec la base de donnée, faire les calculs sur les prix etc… alors que les templates sont juste des mises fichiers qui permettent de mettre en page les données envoyés par le code. Dans Magento, ces 2 parties seront placées à 2 endroits différents. Le « code » sera dans: /app/code/local/monNameSpace/monNomDeModule/ Alors que la partie « template » sera dans : /app/design/frontend/monRepertoiredeTemplates/monTemplate (pour la partie frontend) Et /app/design/adminhtml/monRepertoiredeTemplates/monTemplate (pour la partie backend) La partie « code » de mon template contiendra les elements suivants :

la structure d'un module magento

Block : la ou vous aller mettre la partie « controller » de votre block
Controllers : les controllers de votre module
Models : les models de votre module
Helper : les helpers de votre module
etc : la configuration de votre module
sql : les requettes sql a executé pour créer votre module lors de l’instalation

Petit rappel sur les blocks

Dans Magento, un Block est un morceau de votre site qui marche « tout seul », vous pouvez l’insérer un peu n’importe où. En fait, un block c’est une sorte de « mini controller » que vous pourrez ajouter n’importe où dans votre site. Selon la page de votre site, vous pourrez lui assignez des templates différents en fonction de l'affichage que vous voulez lui donner.

Le dossier /app/code et les codePool magento

Dans ce dossier vous retrouverez 3 dossiers (ces 3 dossiers seront appelés codePool dans magento) qui contiendront :

Community : les plugins de la communauté (téléchargés sur magentoconnect par exemple).
Core : les modules par défaut de magento (A NE SURTOUT PAS MODIFIER)
Local : les modules que vous avez développés vous même où qui ont été développés spécialement pour votre plateforme magento. si ce repertoire n’est pas crée, vous pouvez le créer le vous même.

Vos devoirs en attendant le prochain tutoriel :

Essayez de naviguer dans les dossiers de votre site pour comprendre ce que je vous raconte. Ouvrez les fichiers et essayez de les comprendre.

Conclusion sur la structure d'un module magento

Vous avez vu la structure des modules magento, si vous faites bien vos devoirs vous devriez comprendre un peu mieux. Cela vous parait un peu abstrait pour l’instant ? C’est normal ! Ca fait beaucoup d’informations et vous comprendez mieux au fur et à mesure des prochaines leçons. Dans le prochain tutoriel, nous allons commencer la création de notre premier module en créant le contrôleur. Ne vous inquiétez pas, faites moi confiance : nous allons créer un module complet de A à Z, étapes par étapes. On va y aller doucement et vous verrez que tout ce qui vous parait un peu abstrait dans ce premier tutoriel deviendra clair au fur et a mesure qu’on avancera. Maintenant faites vos devoirs ! Bon courrage ;)
Documents disponibles pour cet article :
Les livres qui peuvent vous aider :
  • Livre Magento Developer's Guide by Alan Mc Gregor
  • Livre Magento Performance Optimization
  • Livre Grokking Magento Vinai
Questions sur cette leçon
Pas de questions pour cette leçon. Soyez le premier !

Vous devez etre connecté pour demander de l'aide sur une leçon.