M2i Formation

Drupal - Pour les développeurs

Par M2i Formation

Objectifs

  • Créer votre propre module qui sera capable d'interagir avec Drupal 8
  • Utiliser Drupal comme un framework pour accélérer vos développements maison, en vous appuyant sur vos API
  • Comprendre le fonctionnement global de Drupal 8 et le conteneur (Symfony)
  • Adapter le fonctionnement du coeur de Drupal 8 ou de modules communautaires sans toucher à leur code source.

Programme

Introduction

  • Présentation rapide de Drupal et de son jargon (noeud, taxonomie...)
  • Présentation et installation des outils de développement (WAMP, Editeur PHP)
  • Téléchargement et installation de Drupal 8
  • 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 :
    • Conteneur
    • Services
    • Injection de dépendance

Plug-in

  • 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

Cache API

  • Comment Drupal gère le cache
  • Différents types de cache
  • Cache API
    • Keys
    • Contexts
    • Tags
    • Max-age
  • Différents modules de cache
    • Internal Page Cache
    • Internal Dynamic Page Cache
    • Big Pipe
  • Auto-placeholdering et lazy builders

Le système de bloc

  • Gestion des blocs avec Drupal 8
  • 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 API Schema (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 formattage 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, à une page
  • Créer son propre système de contrôle d'accès sous forme de service

Pédagogie

L'évaluation des acquis se fait :

  • En cours de formation, par des études de cas ou des travaux pratiques
  • Et, en fin de formation, par un questionnaire d'auto-évaluation ou une certification (M2i ou éditeur)

Partager cette formationTélécharger au format pdf Ajouter à mes favoris

Formations de la même catégories (5)

Tanit Formation
Créer et administrer un site web avec drupalPar Tanit Formation

Dans cette formation vous apprendrez à concevoir un site Web de A à Z avec Drupal. Après l'installation du CMS dans une plateforme Apache, PHP, MySQL, vous configurerez le nouveau site pour ensuite y ajouter vos fonctionnalités. La création de contenus basiques, mais aussi personnalisés, ainsi que leur classification, donneront la matière de votre site que vous apprendrez ensuite à classifier et à présenter dans un style professionnel.

Dawan
Drupal 8 Développeurs : ApprofondissementPar Dawan

Savoir développer des modules pour Drupal, interagir avec le cœur, gérer le routeur, les formulaires, le modèle de données

Openska
Drupal 8 & 9 Developer (Front-end)Par Openska

Openska vous propose cette formation Drupal 8 développeur (front end) sur 2 jours pour vous permettre de maîtriser la couche de theming de Drupal 8/9 : gestion des assets (CSS et JS) et des templates (avec le moteur de thème TWIG), fonction de preprocess, Responsive Design (breakpoint), surcharge du HTML / CSS de modules contribués et intégration d’un plugin externe.

Orsys
Drupal 8 & 9, créer et administrer un site de gestion de contenuPar Orsys

Dans ce cours, vous apprendrez à créer, gérer et administrer le contenu d'un site réalisé avec Drupal 8 & 9. Vous verrez comment organiser les contenus rédactionnels, alimenter le site, proposer des fonctionnalités supplémentaires au moyen d'extensions.

Dawan
Drupal : Webmasters + IntégrateursPar Dawan

Savoir installer Drupal, le configurer et l'administrer au quotidien. Savoir créer un thème complet.