Magento : une plate-forme d'e-commerce en PHP Séparation du code et du design

La séparation du code et du design est une fonctionnalité très répandue dans les plates-formes de e-commerce récentes. Elle s'exprime par une utilisation intensive des feuilles de style et par un système de templates dans lequel on trouvera le code HTML.

L'utilisation de l'architecture MVC du framework Zend

Magento se distingue par l'utilisation de l'architecture MVC du framework Zend. Ce système gère les réécritures d'URL et possède un gestionnaire de cache des pages que l'on appréciera pour de meilleures performances.

La définition de l'organisation des blocs se fait via un fichier XML

La structure des pages est organisée à l'aide de blocs auxquels on peut associer des fichiers template qui se chargeront de l'affichage du code HTML.
La définition de l'organisation des blocs se fait via un fichier XML. Ceci a deux impacts importants. D'une part, la modification est simplifiée : le graphiste peut facilement changer les blocs de place sans être un expert du développement. D'autre part, la structure XML peut être surchargée par des modules, ce qui permet d'ajouter ou de retirer des éléments sans toucher aux fichiers d'origine.

Ajouter des variables PHP accessibles ensuite dans les templates

Par ailleurs, il est tout à fait possible d'ajouter des blocs en agissant dans le contrôleur ou d'ajouter des templates à un bloc par programmation.

Le développeur pourra, également, décider des variables PHP qui pourront être accessibles facilement dans le template et on pourra alors inclure un peu de code PHP pour les besoins de l'affichage. Nul besoin, donc, de connaître un langage spécifique tel que SMARTY pour afficher des éléments en boucle.

Enfin, Magento prévoit des espaces distincts pour tous les designs créés, ce qui permet de les faire cohabiter et de passer de l'un à l'autre extrêmement facilement.