Maîtriser Joomla!
Transcription
Maîtriser Joomla!
Maîtriser Joomla! Guide professionnel du développement d'applications (2ième édition) Avant-propos 1. Objectifs 9 2. Ce dont vous avez besoin 10 3. Ce qui n'est pas traité dans le livre 11 4. Conventions 11 Introduction 1. Aperçu 13 2. Historique 14 3. Nouveautés 15 4. Architecture 16 5. Arborescence générale 17 6. Les extensions 21 Cheminement d'une requête utilisateur 1. Introduction 23 2. Chargement du noyau 26 www.editions-eni.fr © Editions ENI 1/8 Maîtriser Joomla! Guide professionnel du développement d'applications (2ième édition) 2.1 Définition des constantes PHP 2.2 Chargement du Framework 2.3 Étapes supplémentaires pour l'administration 27 28 29 3. Construction de l'application 30 4. Exécution de l'application 31 4.1 Initialisation de l'application 4.2 Calcul de l'itinéraire 4.2.1 Analyse de l'URL en mode RAW 4.2.2 Analyse de l'URL en mode SEF 4.3 Suivi de l'itinéraire 32 33 37 37 39 5. Préparation de l'affichage 41 6. Envoi de la réponse 43 Développement de modules 1. Introduction 45 2. Description du module 47 3. Entrée du module 51 4. Fichier de soutien 52 5. Affichage 54 6. Fichiers de langues 57 7. Mise à jour 62 www.editions-eni.fr © Editions ENI 2/8 Maîtriser Joomla! Guide professionnel du développement d'applications (2ième édition) 7.1 Définition du serveur de mise à jour 7.2 Définition du fichier de mise à jour 62 63 Développement de composants 1. Introduction 65 2. Entrée du composant 66 2.1 Partie publique 2.2 Partie administrateur 67 69 3. Le paradigme « Modèle-Vue-Contrôleur » 3.1 Implémentation dans Joomla! 3.1.1 Les modèles 3.1.2 Les vues 3.1.3 Les contrôleurs 3.1.4 Fonctionnement général du paradigme MVC 3.2 Spécialisation des modèles 3.2.1 Les modèles de collections 3.2.2 Les modèles de formulaires 3.2.3 Les modèles d'administration 3.3 Spécialisation des contrôleurs 3.3.1 La gestion d'un formulaire 3.3.2 Le contrôleur d'administration 4. Construction du composant 70 70 72 74 75 76 76 78 81 87 87 90 91 4.1 Convention de l'arborescence 4.1.1 Le dossier des modèles 4.1.2 Le dossier des vues 4.1.3 Le dossier des contrôleurs 4.1.4 Le dossier des fichiers de soutien 4.2 Construction de la partie publique 4.2.1 Entrée du composant 4.2.2 Les modèles www.editions-eni.fr 69 © Editions ENI 91 92 93 93 94 94 95 95 3/8 Maîtriser Joomla! Guide professionnel du développement d'applications (2ième édition) 4.2.3 Les vues 4.2.4 Les contrôleurs 4.2.5 Le routeur 4.2.6 Calcul du cheminement 4.2.7 Classes de soutien HTML 4.2.8 Spécialisation de la classe JCategories 4.3 Construction de la partie administrateur 4.3.1 Entrée du composant 4.3.2 Les modèles 4.3.3 Les vues 4.3.4 Les contrôleurs 4.3.5 Configuration générale 4.3.6 Définition des privilèges 4.3.7 Description du fichier d'installation du composant 97 99 99 107 108 109 111 112 113 113 114 115 115 118 Développement de plugins 1. Introduction 129 2. Utilisation 131 3. Obtention d'un plugin 132 4. Écriture d'un nouveau plugin 132 4.1 Le fichier XML 4.2 Le fichier PHP 4.3 Les événements standard 4.3.1 Groupe authentication 4.3.2 Groupe captcha 4.3.3 Groupe content 4.3.4 Groupe editors 4.3.5 Groupe editors-xtd 4.3.6 Groupe extension 4.3.7 Groupe finder www.editions-eni.fr 132 133 134 134 136 136 139 139 140 141 © Editions ENI 4/8 Maîtriser Joomla! Guide professionnel du développement d'applications (2ième édition) 4.3.8 Groupe installer 4.3.9 Groupe quickicon 4.3.10 Groupe search 4.3.11 Groupe system 4.3.12 Groupe twofactorauth 4.3.13 Groupe user 142 142 143 144 146 147 5. Focus sur les plugins Smart Search 148 5.1 Introduction 5.2 Activation du moteur Smart Search 5.3 Mise en œuvre 5.3.1 Le fichier XML de configuration 5.3.2 Le fichier PHP 5.3.3 La classe FinderIndexerAdapter 5.3.4 La classe FinderIndexerResult 5.4 Complément 6. Application au composant de gestion de dictionnaire 148 149 149 150 150 151 160 162 163 Les templates 1. Introduction 165 2. L'arborescence d'un template 165 3. Le fichier principal de mise en page 167 4. Les fichiers secondaires de mise en page 169 5. Les paramètres 170 6. Les fichiers médias 171 www.editions-eni.fr © Editions ENI 5/8 Maîtriser Joomla! Guide professionnel du développement d'applications (2ième édition) 7. Les styles de modules 172 8. La surcharge de l'affichage standard 173 9. Les gabarits partagés de Joomla! 3.x 174 9.1 Description 9.2 Mise en œuvre 9.3 Surcharge à partir d'un template 174 176 177 Les outils de la librairie 1. Les classes fondamentales 179 1.1 Le chargeur de classes 1.2 La classe JObject 1.3 L'usine d'objets globaux 1.4 Les registres 1.5 L'application 1.5.1 La classe JApplicationCms 1.5.2 La classe JMenu 1.5.3 La classe JRouter 1.5.4 La classe JCategories 1.5.5 La classe de soutien 1.6 Le document 1.7 Le cache 2. La base de données 224 2.1 Opérations sur la base de données 2.1.1 Méthodes de création et de destruction 2.1.2 Méthodes d'informations 2.1.3 Opérations de sélection 2.2 Construction d'une requête 2.3 Opérations sur les tables www.editions-eni.fr 179 181 182 185 188 189 195 198 201 205 206 220 © Editions ENI 225 225 226 227 232 237 6/8 Maîtriser Joomla! Guide professionnel du développement d'applications (2ième édition) 2.4 Utilisation des ensembles emboîtés 3. La génération de code HTML 247 3.1 Classes de soutien 3.1.1 Description du mécanisme 3.1.2 Les fonctions implémentées 3.2 Les barres de boutons 3.3 Les formulaires 3.3.1 Architecture 3.3.2 Les champs prédéfinis 3.3.3 Les règles prédéfinies 3.4 La bibliothèque d’Interface Utilisateur Joomla (JUI) 3.4.1 La librairie Bootstrap 3.4.2 La bibliothèque d'icônes IcoMoon 3.4.3 Le langage LESS 4. La gestion de la technologie Ajax 248 248 250 271 276 276 286 291 291 291 299 300 302 4.1 Définition d'une requête Ajax 4.2 Interfaçage avec les modules 4.3 Interfaçage avec les plugins 302 303 304 5. La gestion des privilèges 304 5.1 Les utilisateurs 5.2 Les règles d'accès 5.2.1 La classe JAccess 5.2.2 La classe JAccessRule 5.2.3 La classe JAccessRules 305 309 311 313 314 6. L'environnement 316 6.1 La requête 6.2 Le navigateur 6.3 Le résultat 6.4 Les URI 6.5 La session www.editions-eni.fr 243 316 318 321 322 326 © Editions ENI 7/8 Maîtriser Joomla! Guide professionnel du développement d'applications (2ième édition) 7. Le système de fichiers 330 7.1 Les fichiers 7.2 Les dossiers 7.3 Les chemins 7.4 Les flux 7.5 Les archives 330 333 337 338 344 8. Les outils du développeur 345 8.1 Fichiers de traces 8.2 Performances 346 347 9. Les utilitaires 348 9.1 L'internationalisation 9.1.1 L'interface utilisateur 9.1.2 Le système d'aide 9.2 Les dates 9.3 Les chaînes de caractères 9.4 Les filtres 9.5 Les tableaux 9.6 Le cryptage 9.7 L'envoi de courriers électroniques Index www.editions-eni.fr 349 349 358 359 362 365 367 369 370 375 © Editions ENI 8/8