[wpms_breadcrumb reverse="0"]
CMS - Web

Drupal 8, développement avancé avec Symfony 2

Reference : CMSWEB03

3

jours
- 1650 € HT
Télécharger la fiche
Prochaines sessions
    Drupal 8, développement avancé avec Symfony 2
    Objectifs

    • Appréhender les rouages de Drupal 8 au travers du container Symfony 2,
    • Maîtriser le concept de l’injection de dépendance Drupal 8
    • Maîtiser l’utilisation de l’EventDispatcher
    • Développer un plugin personnalisé
    • Développer une entité de configuration personnalisée

    Pré requis

    • Connaître le PHP Objet (indispensable)
    • Connaître Drupal 8 en tant que développeur (routing, Form API, Database API, création de modules…).
    • Connaître HTML et CSS TYPE

    Modalités et délais d’accès

    Bulletin d'inscription à retourner complété

    Public visé

    Tout public

    Pré-inscription

    Programmes de Drupal 8, développement avancé avec Symfony 2

    Injection de dépendance

    • Le concept de l’injection de dépendance
    • Les types d’injection
    • l’injection de dépendance avec Symfony 2

    Le conteneur de services : Symfony

    • Fonctionnement et enjeux du Container
    • Les services de Drupal 8
    • Déclarer un nouveau service
    • Modifier un service de Drupal 8
    • Concepts hérités de Symfony 2 : le container, les services…

    EventDispatcher

    • Les patrons de conception « Observateur » et « Médiateur »
    • Le gestionnaire d’événements
    • Les événements principaux du framework Symfony 2
    • Connecter des écouteurs à des événements du container Symfony
    • Propager des événements personnalisés dans du code métier
    • Créer de nouveaux types d’événements
    • Enregistrer des « écouteurs » et « abonnés » d’événements

    Plugin personnalisé sous Drupal 8

    • Déclarer le plugin manager (service)
    • Class DefaultPluginManager
    • Méthode de découverte (annotation par défaut).

    Mise en oeuvre un plugin

    • Condition de visibilité sur les blocs avec le plugin Condition Plugin API
    • Utiliser la Mail API

    Personnalisation d’une entit

    • Système de routage pour la gestion de l’entité.
    • Déclarer une interface (ContentEntityInterface).
    • Déclarer une classe (ContentEntityBase).
    • Déclarer le schema correspondant.
    • Les contrôleurs et les formulaires
    • Soumettre ses données à Views.