Drupal 10 - Pour les développeurs Back End
Drupal 10 - Pour les développeurs Back End
Informatique > Informatique et systèmes d'information
Objectifs
- Créer votre propre module qui sera capable d'interagir avec Drupal.
- Utiliser Drupal comme un framework pour accélérer vos développements maison, en vous appuyant sur vos API.
- Expliquer le fonctionnement global de Drupal et le container (Symfony 2).
- Adapter le fonctionnement du coeur de Drupal ou de modules communautaires sans toucher à leur code source.
Le programme de la formation
Introduction
Présentation rapide de Drupal et de son jargon (node, taxonomie...)
Présentation et installation des outils de développement (WAMP, éditeur PHP)
Téléchargement et installation de Drupal
Installation des outils du développeur : module "Devel", Firebug
PHP Objet, les concepts de base
- Classes
- Interfaces
- Injection de dépendance
- PSR-4
- Annotations...
Création d'un module
Fichiers nécessaires
Structures des fichiers et autoloading
PSR-0 et PSR-4
Concepts hérités de Symfony 2 :
- Container
- Services
- Injection de dépendance
Plug-ins
Qu'est-ce qu'un plug-in ?
Mécanisme de découverte (fichier YAML, annotation PHP)
Exemples de plug-in et implémentation
Le système de routing
Comment Drupal gère le routing
Comment faire correspondre une URL à une page
Utilisation des méthodes create() et _construct()
Créer des URL dynamiques
Ajouter des liens de menu, liens contextuels, liens d'action et de tâche
Gestion de la configuration
Comment Drupal gère le cache
Les différents types de cache
Cache API :
- Keys
- Contexts
- Tags
- Max-age
Les différents modules de cache :
- Internal Page Cache
- Internal Dynamic Page Cache
- Big Pipe
State API
Le système de bloc
Gestion des blocs avec Drupal
Introduction aux types de bloc
Comment créer un bloc avec Bloc Plug-in
La base de données
Comprendre la couche d'abstraction BDD de Drupal
Entity API : gestion des entités de contenu et de configuration (EntityTypeManager et EntityQuery)
Se connecter à la base et effectuer des requêtes simples avec la Database API
Enregistrer ses propres données en base avec la "Schema API" : fichier d'installation
Les noeuds (exemple d'entité de contenu)
Qu'est-ce qu'un noeud ?
Créer un "node module"
Manipuler les noeuds par la programmation
Intercepter les actions effectuées sur les noeuds avec les hook_entity_XXX()
Ajout d'onglet sur chaque page de noeud
Système de templating
Principes de la couche de thème : séparation fonctionnelle / présentation
Twig
Render arrays
Déclarer son propre formatage sous forme de template
Formulaires
Créer ses propres formulaires par la programmation avec Form API
Gérer la validation et la soumission d'un formulaire
Formulaires AJAX
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)
State API
Principe du Configuration Management : fichiers YAML, import / export
Créer un formulaire dans le Back Office de Drupal
Ajouter sa propre configuration : manipulation de l'objet Config
Traduction de configuration
Sécurité
Comprendre le contrôle d'accès de Drupal
Protéger l'accès à un bloc
Protéger l'accès à une page
Créer son propre système de contrôle d'accès sous forme de service
Exemples de travaux pratiques (à titre indicatif)
Etudes de cas :
- Création d'un module de A à Z avec Drupal
- Implémentation d'un plug-in existant dans Drupal
- Utilisation du système de routing de Drupal
- Utilisation du cache avec Drupal
- Utilisation des blocs de Drupal
- Interaction de son site Drupal avec une base de données
- Utilisation des noeuds
- Création d'un formulaire avec Drupal
- Utilisation du système de templating Drupal
- Interaction avec la State API de Drupal
- Les bonnes pratiques de sécurité du code Drupal
Public et Pré-requis de la formation
Développeurs Web et/ou développeurs Drupal.
Avoir suivi la formation PHP-IN "PHP 8 et versions antérieures - Développement d'applications Web" ou avoir les connaissances équivalentes. Il est indispensable de connaître PHP Objet et fortement recommandé de connaître HTML, CSS et Drupal en tant que webmaster.
Méthode pédagogique de la formation
Le formateur alterne entre méthode démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
29 Commentaires
Formation flexible en petit groupe
Très bonne formation! Organisation rapide et on est bien conseillé. Merci up up formation, je recommande fortement!!
Formation intéressante avec de bons échanges et une formatrice à l'écoute.
Merci up up concernant la flexibilite de mon planning
Bien.
Une organisation à la fois simple et professionnelle
bien mais surprenant concernant le paiement
Une formation adaptée à ce que je désirais m’a été trouvée avec succès
Bonne prestation Groupe sympathique
Société professionnelle, bon relationnel
Bonne formation
Simple et concis, une bonne présentation du concept
Je suis très satisfait d’UpUp. Le principe de la mutualisation est malin et très innovant. J’ai pu me former pour le 1/4 du prix initial de la formation. Je recommande.
Je suis particulièrement satisfaite de la formation surtout par la disponibilité de la formatrice et par le contenu du programme.
J'ai découvert cette plateforme très récemment. J'ai trouvé une formation près de chez moi dans le domaine recherché en quelques clics. Simple, efficace et rapide ! merci.
formation adaptée à mes besoins et mes horaires, je recommande vivement
Site clair. Offre complète
Claire facile d'acces ,rapide
Super formation. Merci beaucoup
Je recommande pour la qualité, la réactivité et la précision,
Simple, efficace, pratique !
très bonne formation très agréable merci
Site simple et facile d'utilisation.
Bonne formation
Site convivial facile d'accès et ergonomique prix intéressant
Excellente formation et concept innovant. Je recommande !
Upup est très professionnel, le site ergonomique.
Très clair, moderne et utile. N’hésitez pas à y aller, vous ne serez pas déçu
Un concept innovant. En mutualisant la formation, on assure un minimum de stagiaires par session.