fff

Combien de stagiaires suivront cette formation ?


Valider Annuler

Accueil    Formations    Informatique    Langages et développement    PHP    Drupal - Pour les développeurs

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

Objectifs pédagogiques

  • Reconnaître le système de "Theming" (habillage) de Drupal
  • Contrôler le HTML / CSS généré par Drupal
  • Optimiser vos développements avec le framework Drupal 8 / 9 à l'aide des API
  • 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
  • Expliquer 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.

Modalités et moyens pédagogiques

Formation délivrée en présentiel ou distanciel* (e-learning, classe virtuelle, présentiel à distance).

Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).

Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :

  • Ordinateurs Mac ou PC (sauf pour les cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
  • Environnements de formation installés sur les postes de travail ou en ligne
  • Supports de cours et exercices

En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatique...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.

* nous consulter pour la faisabilité en distanciel

** ratio variable selon le cours suivi

Niveau requis

Avoir suivi la formation PHP-IN "PHP 5, 7 et 8 - 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.

Testez vos connaissances

Afin de vous orienter vers la formation la plus adaptée à votre niveau, passez votre test de connaissances pour évaluer vos compétences actuelles.

Temps estimé : 4 minutes.

Passer le test

Public concerné

Développeurs.

Programme

Jour 1 - Matin

Introduction

  • Présentation rapide de Drupal et de son jargon (noeud, taxonomie...)
  • Présentation et installation des outils de développement (WAMP, éditeur 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...
Exemples de travaux pratiques (à titre indicatif)
  • Installation des outils et prise en main

Les fondamentaux du Theming

  • Comprendre les principes de base
  • Quels sont les fichiers essentiels d'un thème
  • Quels sont les différents éléments natifs de Drupal
  • Thème de base et héritage de thème

Jour 1 - Après-midi

Les systèmes de templating Twig

  • Gestion des templates
  • Introduction à Twig
  • Préparer un environnement de travail avec Twig
  • Principes de la couche de thème : séparation fonctionnelle / présentation
  • Approfondissement de Twig
  • Render arrays
  • Déclarer son propre formatage sous forme de template
Exemples de travaux pratiques (à titre indicatif)
  • Utilisation de Twig
  • Déclaration de formatage de sortie à partir de templates

Jour 2 - Matin

Formulaires et code généré

  • Comprendre le code HTML et CSS généré par l'outil Drupal
  • 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)
Exemple de travaux pratiques (à titre indicatif)
  • Création d'interfaces graphiques

Les grandes techniques CSS indispensables à l'intégration de thèmes

  • Les menus horizontaux sous forme de liste
      /
    • Les mises en page sans tableaux (double colonne, triple colonne...)
    • Remplacer du texte par une image
    • Les boîtes à bords arrondis
    Exemple de travaux pratiques (à titre indicatif)
    • Utilisation de différents types de CSS

    Comment Drupal fabrique le HTML / CSS

    • Via des templates, des fonctions de thèmes et des modules
    • Analyse du HTML / CSS généré par Drupal (imbrication des balises, nommage des classes et des ID...)
    • Comment intercepter chacune des options ci-dessus pour proposer sa propre version
    Exemple de travaux pratiques (à titre indicatif)
    • Analyse du HTML généré par Drupal

    Jour 2 - Après-midi

    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
    Exemples de travaux pratiques (à titre indicatif)
    • Prise en main de l'outil de développement et création d'un module

    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

    Jour 3 - Matin

    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
    Exemple de travaux pratiques (à titre indicatif)
    • Intégration du routage dans l'application créée

    Optimiser le développement avec 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
    Exemple de travaux pratiques (à titre indicatif)
    • Manipulation du Cache API pour optimisation

    Jour 3 - Après-midi

    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
    • Développement et création d'un module

    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
    Exemple de travaux pratiques (à titre indicatif)
    • Manipulation de la configuration

    Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.

    Modalités d’évaluation des acquis

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

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

Vous souhaitez suivre cette formation ?

Cette formation est disponible en présentiel ou en classe à distance, avec un programme et une qualité pédagogique identiques.

Tarif : à partir de 1 800 € HT.

Choisissez la modalité souhaitée pour vous inscrire :

Formation disponible en intra-entreprise

Votre société a besoin d'une offre personnalisée ? Contactez-nous

Faites-nous part de votre projet de formation, nous sommes là pour vous guider.

Contactez-nous