Installation de Magento 1. Objectif 11 2. Pré-requis matériels 11 3. Installation de Magento 11 3.1 Étapes de l'installation 12 3.2 Fichier local.xml 20 4. Configuration de Magento 23 4.1 Accès au back office (espace d administration) 23 4.2 Traduction de Magento via Magento Connect 24 4.2.1 Traduction du back office 29 4.2.2 Traduction du front office 30 4.3 Configuration multisite, multiboutique et d'une vue magasin 31 4.3.1 Configuration multisite (websites) 32 4.3.2 Configuration multiboutique (stores) 32 4.3.3 Création d'une catégorie racine 33 4.3.4 Configuration d'une vue magasin (store view) 34 4.3.5 Configuration des informations sur un site et une vue 35 4.4 Gestion des permissions 35 4.4.1 Création des rôles 35 4.4.2 Création des comptes utilisateurs 36 4.5 Configuration de l'interface front office 38 4.5.1 Paquet et thème 38 4.5.2 Layouts 38 4.5.3 Templates 39 4.5.4 Skins 39 4.5.5 Fichier de traduction 39 4.5.6 Configuration de l'interface 39 Ajout d un nouveau module 1/9
1. Objectif 43 2. Déclaration du module 43 3. Structuration des dossiers du module 46 4. Création du fichier de configuration config.xml 47 5. Création d'un contrôleur 48 5.1 Création d un contrôleur en front office 48 5.1.1 Contrôleur d'arrière-plan 48 5.1.2 Contrôleur accessible 52 5.2 Création d un contrôleur en back office 56 6. Création d'un layout 59 6.1 Création d un layout pour le front office 60 6.2 Création d un layout pour le back office 65 7. Création d'un bloc 66 8. Association d'un bloc à un template 69 8.1 Association d'un bloc à un template en utilisant un layout 69 8.2 Association d'un bloc à un template en utilisant une variable spéciale 73 9. Création d'un helper 74 9.1 Utilisation d'un helper dans le cas général 74 9.2 Utilisation d'un helper pour la traduction 78 10. Création d'un modèle 82 11. Création d'un installeur 95 11.1 Mise en place d'un script d'installation 95 2/9
11.2 Mise à niveau d'un script d'installation (upgrade) 102 12. Définition des options de configuration 106 13. Création d un menu en back office 120 14. Création d un module en back office 123 Surcharge des classes existantes 1. Objectif 143 2. Surcharge d'un contrôleur 144 2.1 Surcharge d un contrôleur en front office 144 2.2 Surcharge d un contrôleur en back office 150 3. Surcharge d'un bloc 152 4. Surcharge d'un modèle 155 5. Surcharge d'un helper 159 6. Observateur et événement (observer et event) 162 Catalogue 1. Objectif 169 2. Types de produits 169 2.1 Produit simple (simple product) 169 3/9
2.2 Produit groupé (grouped product) 170 2.3 Produit configurable (configurable product) 170 2.4 Produit virtuel (virtual product) 170 2.5 Produit packagé (bundle product) 171 2.6 Produit téléchargeable (downloadable product) 171 2.7 Création d'un module permettant l'ajout d'un nouveau type de produit 171 3. Options personnalisables 180 4. Produits apparentés (related products) 180 4.1 Présentation des produits apparentés 180 4.2 Manipulation sur les produits apparentés 180 4.2.1 Manipulation du layout pour le choix d un emplacement 180 4.2.2 Manipulation de l affichage des informations sur les articles 182 5. Ventes incitatives (up-sells) 183 5.1 Manipulation sur les ventes incitatives 184 5.1.1 Manipulation du layout pour le choix d un emplacement 184 5.1.2 Manipulation de l affichage des informations sur les articles 185 6. Ventes croisées (cross-sells) 187 6.1 Manipulation sur les ventes croisées 187 6.1.1 Manipulation du layout pour le choix d un emplacement 187 6.1.2 Manipulation de l affichage des informations sur les articles 188 7. Attributs 189 7.1 Gestion d un attribut produit en back office 189 7.1.1 Création d un attribut produit en back office 189 7.1.2 Assignation d un attribut produit à un jeu d attributs en back office 194 7.2 Gestion des attributs produit via un installeur 195 7.2.1 Création d un attribut produit via un installeur 195 7.2.2 Assignation d un attribut produit à un jeu d attributs via un installeur 204 7.2.3 Modification des informations sur un attribut 204 7.2.4 Suppression d un attribut 205 4/9
7.3 Récupération des valeurs des attributs 206 7.3.1 Type d entrée : Champ texte, Zone de texte, Date, Image, Prix et Taxe Fixe de Produit 206 7.3.2 Type d entrée : Oui/Non et Liste déroulante 206 7.3.3 Type d entrée : Sélection multiple 206 8. Jeux d attributs 207 8.1 Création d un jeu d attributs en back office 207 8.2 Gestion des jeux d attributs via un installeur 208 8.2.1 Création d un jeu d attributs produit via un installeur 208 8.2.2 Modification d un jeu d attributs produit via un installeur 208 8.2.3 Suppression d un jeu d attributs produit via un installeur 209 8.3 Module conseillé pour un changement de jeu d attributs à la volée 210 9. Catégories 210 9.1 Gestion des attributs catégorie via un installeur 210 9.2 Cas concret : ajout d'un type de catégorie et récupération de la valeur de l attribut 210 Vente 1. Objectif 215 2. Taxe 215 2.1 Classe de taxe produit 215 2.2 Classe de taxe client 217 2.3 Gestion des zones et des taux de taxe 218 2.4 Gestion des règles de taxe 219 3. Commande 220 3.1 Création d un attribut commande via un installeur 221 3.2 Récupération de la valeur d un attribut commande 222 3.3 Manipulation des éléments autour de la commande 223 5/9
4. Facture 224 4.1 Création d un attribut facture via un installeur 224 4.2 Récupération de la valeur d un attribut facture 226 4.3 Manipulation des éléments autour de la facture 227 5. Expédition 227 5.1 Création d un attribut expédition via un installeur 228 5.2 Récupération de la valeur d un attribut expédition 229 5.3 Manipulation des éléments autour de l expédition 230 6. Avoir 231 6.1 Création d un attribut avoir via un installeur 231 6.2 Récupération de la valeur d un attribut avoir 233 6.3 Manipulation des éléments autour de l avoir 233 7. Mode de livraison 234 7.1 Ajout d un nouveau mode de livraison 234 8. Mode de paiement 242 8.1 Ajout d un mode de paiement 243 Client et groupe de clients 1. Objectif 257 2. Gestion des attributs client via un installeur 257 3. Assignation d un client à un groupe de clients 259 3.1 Ajout d un groupe de clients en back office 259 3.2 Assignation d un client à un groupe de clients en back office 260 3.3 Assignation d un client à un groupe de clients via du code 261 6/9
4. Module montrant l utilisation des groupes de clients en tant que filtre 264 5. Exemples de cas d utilisation 271 CMS et variables personnalisées 1. Objectif 273 2. Pages 273 2.1 Création d une page dans le back office 273 2.2 Accès à la page en front office 277 3. Blocs statiques 278 3.1 Création d'un bloc statique dans le back office 278 3.2 Exploitation d'un bloc statique 279 3.2.1 Appel dans une catégorie 279 3.2.2 Appel par l'intermédiaire d'un layout 280 3.2.3 Appel par l intermédiaire des variables spéciales en back office 281 3.2.4 Appel dans un template 282 4. Widgets 283 4.1 Création d'un widget en back office 283 4.2 Création d'un widget personnalisé 285 4.2.1 Ajout d'un widget dans un gabarit de newsletter 292 4.2.2 Ajout d'un widget dans une page statique 293 4.2.3 Ajout d'un widget dans un bloc statique 293 5. Variables personnalisées 294 5.1 Création d une variable personnalisée 294 5.2 Utilisation d'une variable personnalisée 295 5.2.1 Utilisation d'une variable personnalisée dans un gabarit d e-mail 295 5.2.2 Utilisation d'une variable personnalisée dans un gabarit de newsletter 296 7/9
5.2.3 Utilisation d'une variable personnalisée dans une page CMS 297 5.2.4 Utilisation d'une variable personnalisée dans un bloc statique 298 5.2.5 Affichage de la valeur HTML d'une variable personnalisée par du code PHP 299 Magento et Ajax 1. Objectif 301 2. Liste des fichiers à créer 301 3. Déclaration du module 302 4. Création du fichier de configuration 302 5. Création du layout 304 6. Création du fichier JavaScript 304 7. Création du bloc 305 8. Création du template 306 9. Contrôleur 308 10. Création du helper par défaut 309 11. Résultat en front office 309 Annexe 8/9
1. Aide au développement 311 2. Modules complémentaires 320 2.1 iadvize.com 320 2.2 ColiPoste/La Poste - Expeditor INET compatible So Colissimo 320 2.3 Enhanced Admin Product Grid 320 2.4 Netzarbeiter_GroupsCatalog 320 2.5 PaymentFilter for Products and Customer Groups 321 2.6 Simple Configurable Products 321 2.7 BankPayment 321 2.8 Owebia Shipping 2 321 2.9 CashOnDelivery 322 2.10 Simple Banners 322 2.11 Admin Custom Shipping Rate 322 2.12 CyberMUT extension by Quadra Informatique 322 2.13 ATOS/Sips extension by Quadra Informatique 322 Index 323 9/9