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