Getters et Setters dans Magento
Petite aparté avec cet article avant de retourner dans le monde merveilleux du concept MVC de Magento (…). Il s’agit ici de vous présenter le principe de getters et setters proposé par Magento. Comme vous le savez peut-être, PHP propose depuis la version 5 le principe de surcharge magique. Il s’agit de méthodes appelées automatiquement lors de [...]
Création d’un Block
Si vous avez suivi la leçon précédente concernant les blocs et les templates, vous savez déjà comment créer un bloc, l’agencer sur la page à l’aide d’un layout, et générer son code HTML avec un template. Vous savez aussi qu’un bloc est en fait une instance d’une classe, descendante de Mage_Core_Block_Abstract. Nous allons voir ici comment [...]
Blocs et Templates
Après lecture des 2 articles précédents concernant la présentation des layouts, puis une description plus en détail, il est temps désormais de passer à la création de blocs pour afficher notre « Hello World! ». Reprenons notre fichier de layout helloworld.xml, et donnons lui le contenu suivant: Il s’agit ici de créer, pour la page par défaut [...]
Layouts en détail
Après avoir vu une présentation des Layouts et leurs commandes principales (<block>, <reference>, …), rentrons maintenant dans le détail de leur fonctionnement avec l’analyse d’un layout particulier: page.xml. Blocs Structurels Ce layout, installé par Magento dans l’interface base (/app/design/frontend/base/default/layout/page.xml) est chargé par Magento, comme n’importe quel autre fichier de layout présent dans config/frontend/layout/modules de l’arbre [...]
Découverte des Layouts
Les Layouts – et les Templates – sont les 2 éléments qui composent la partie ‘View’ du modèle MVC : les templates permettent de générer le code HTML des blocs visuels d’une page, tandis que les layouts sont là pour organiser ces blocs sur la page. Difficile de séparer les 2 éléments mais nous allons [...]
Focus sur le fichier de configuration config.xml
Le fichier de configuration associé à un module – etc/config.xml – est très important: il sert notamment à indiquer à Magento les composants présents dans votre module, et ceux que vous réécrivez. Magento l’agrège avec l’ensemble des fichiers config.xml de tous les modules pour former un unique fichier de configuration sur lequel il s’appuie pour fonctionner. Si [...]
Contrôleur – Passage de paramètres
Avant de passer à un autre composant de Magento, restons encore quelques instants avec le contrôleur et répondons à cette question: comment gérer les paramètres transmis sur l’URL d’appel? Continuons avec notre module Helloworld : apportons quelques modifications pour lui faire afficher le texte que nous lui communiquerons en paramètre. Exemple: http://localhost/magento/helloworld/index/index/message/message%20transmis%20en%20parametre Avec cet exemple, [...]
Surcharge d’un contrôleur
Nous avons vu dans l’article précédent comment créer un nouveau contrôleur et l’intégrer dans Magento. Nous allons voir ici que nous pouvons modifier le comportement de Magento sans modifier son code source, par la surcharge d’un contrôleur. Imaginons que nous souhaitons afficher le message « Enregistrement impossible ! » lorsqu’un utilisateur souhaite s’enregistrer dans notre boutique Magento. [...]
Réalisation d’un contrôleur
Nous avons donc préparé notre environnement pour le développement de notre module et même déjà indiqué à Magento qu’il pouvait l’activer… Mais pour l’instant, notre module ne fait pas grand chose… Dans cet article, nous allons nous concentrer sur le point d’entrée de notre module: un contrôleur. Conseil: relisez l’article qui décrit l’architecture d’un module [...]
Référencement et Activation d’un Module
Après avoir vu grossièrement comment fonctionne un module sous Magento, nous allons nous attacher dans cet article à en développer un. Première étape : définir sa fonction Bon, on va pas faire très compliqué pour ce 1er module ni dans le très original: notre module va afficher « Hello World ! » lorsqu’il sera appelé. Deuxième étape [...]