Drupal 7 Développeur
Objectifs de la formation
- Créer son propre module qui sera capable d'"intervenir" partout dans Drupal : en générant une page, un bloc, un menu, en se connectant à un web service, en réalisant un traitement automatisé, en affichant un formulaire...
- Utiliser Drupal comme un framework pour accélérer ses développements maison, en s'appuyant sur son système d'authentification, sa couche d'abstraction BDD, son système de gestion des formulaires...
- Comprendre le fonctionnement de l'API Drupal et le système de "hooks".
- Adapter le fonctionnement de modules communautaires sans toucher à leur code source.
- Intégrer Drupal à d'autres logiciels existants.
- Importer ou exporter des données dans/hors de Drupal.
Contenu du cours
1: Introduction
- Présentation rapide de Drupal et de son jargon (node, taxonomie...).
- Présentation et installation des outils de développement (WAMP, Editeur PHP, Firefox).
- Téléchargement et installation de Drupal 7.
- Les outils du développeur : Firebug, module "devel".
2: Création d'un module
- Les fichiers nécessaires.
- Créer un "hook".
- Créer une page d'administration pour le module.
- Enregistrer les réglages du module.
3: Le système de menu
- Comment Drupal gère l'URL routing.
- Comment faire correspondre une URL à une page.
- Comment gérer le contrôle d'accès à une URL.
- Utilisation de caractères "joker" dans les URLs.
- Modifier les URLs déclarées par d'autres modules.
4: La base de données
- Comprendre la couche d'abstraction BDD de Drupal.
- Se connecter à la base et effectuer des requêtes.
- La Schema API : qu'est-ce que c'est ? comment l'utiliser ?
- Se connecter à plusieurs BDD depuis Drupal.
5: Les utilisateurs *
- L'objet $user.
- Introduction aux hook_user().
- Le processus de création de compte utilisateur.
6: Les noeuds
- Qu'est-ce qu'un noeud ? (l'objet $node)
- Créer un "node module".
- Contrôler l'accès aux noeuds.
- Créer et sauvegarder des noeuds programmatiquement.
- Intercepter les actions effectuées sur les noeuds.
7: Les formulaires
- Créer ses propres formulaires programmatiquement (FormAPI).
- Gérer la validation et la soumission d'un formulaire.
- Changer la présentation d'un formulaire. *
- Modifier un formulaire généré par Drupal ou un autre module sans toucher au code source de ce formulaire (hook_form_alter). *
- Formulaires complexes : formulaires multipages, formulaires AJAX... *
8: Le système de thème *