Formation Magento 2 : Back End Réf : MAG2B

Par Alexandre Khayrullin

Concepts et bonnes pratiques de développement Back Office avec Magento 2.

Durée :
5 jours
Lieux :
Paris

Partage :

  • Twitter
  • Facebook
  • E-mail
  • Linkedin
  • Viadeo

Soyez alertés par e-mail des nouvelles sessions : Poser une alerte,

Description

La formation Magento 2 Back End est une formation technique qui permet d’acquérir les compétences nécessaires pour pouvoir comprendre et étendre les possibilités fonctionnelles de Magento 2. Orienté travaux pratiques, vous aborderez l’ensemble des aspects du développement sous Magento 2. 

Objectifs pédagogiques

A l'issue de cette formation, les participants seront en mesure de :
  • Installer Magento 2
  • Créer un module Front et BackOffice  Magento 2  en respectant les bonnes pratiques de conception, codage et de test
  • Mettre en place ou enrichir les APIs Magento 2


Public

Profils à dominante technique : Lead Dev, Ingénieur de développement, Développeur junior et senior souhaitant découvrir le framework Magento 2.

Pré-requis

Expérience en développement objet PHP et de préférence connaissant Magento 1

Type

Stage pratique

Méthode pédagogique

Alternance de présentation magistrale, d'illustrations de cas concrets et de travaux pratiques.

Plan de cours

 

PROGRAMME DE LA FORMATION

Environnement
Environnement Magento
Environnement de développement
Installation de Magento 2
Configuration de l’environnement de développement
Les modes : Default, Developer, Production, Maintenance
Arborescence des fichiers

Modules
Présentation générale
Qu’est-ce qui constitue un module
Contenu minimum d’un module
Classes d’un module : PSR-2, autoloader, dependency injection, organisation…
Fichiers XML d’un module : validation obligatoire, cloisonnement par area
Traductions

Instanciation des objets
Dependency Injection
Object Manager
Compilateur

Routage et Controllers
Présentation générale
Les différents Routers disponibles
Principe de fonctionnement d’un Router
Controllers (alias Action Classes)
Interpêtation d’une URL module/action-path/action
Configuration du routage pour chaque module
Résulats possibles: page, JSON, redirection…
Instanciation à l’intérieur d’un controller

Évènements et Observers
Déclencher un évènement
Déclarer un Observer

Plug-ins
Concept et limitations
Déclaration
Convention de nommage

Zoom sur les tests unitaires
Commandes: installation, exécution
Création d’un TU

TP1
Création d’un controller : Retour d’un JSON, Redirection, Gestion des paramètres
Observer
Plugins : Remplacement d’une méthode via plugin

Layouts
Définition
Les trois types de layout (page layout, configuration de page, layout générique)
Utilisation des fichiers de layout : Conventions de nommage
Contenus d’un layout: Containers, Blocks : Les différents types de Blocks prédéfinis
Templates et leur utilisation
UiComponents :
  • Cas d’utilisation
  • Définition
  • UiComponents basiques et secondaires
  • Templates des UiComponents
  • Utilisation des UiComponents
  • Exemples
Références vers les Containers et Blocks existants
  • Actions sur les Blocks
  • Déplacement et suppression des Blocks et Containers
TP2
Surcharge du controller créé dans le TP1
Création d’une page avec une structure particulière : Création des Blocks avec templates
Modification du layout créé dans un module différent

Base de données et ORM
Models
  • Définitions: ORM, Models, Resource Models, Collections, Resource Adapters
  • Généralités pour le CRUD
  • Liaison Model / Resource Model
  • Liaison Model / BDD
  • Liaison Collection / Model
  • Model Type Interface
  • Vue détaillée : Model, Resource Model, Collection
  • Scripts d’install et d’upgrade
  • Types de script d’install (Install et Upgrade, Schema et Data)
  • Installation d’un module
  • Exemples de scripts
EAV (Entity-Attribute-Value)
  • Concept
  • Méta-tables
  • Models utilisés
  • Chargement et sauvegarde (Différences dans les implémentations des classes ORM, Process de chargement, Source Models : utilisation des valeurs ou labels pour les attributs de type “liste déroulante”)
  • Gestion des attributs (Deux aspects de l’EAV : Méta-information et Contenu, Types des valeurs, Classe Setup spécifique, Création d’un nouvel attribut, Modèles des attributs: Backend, Source et Frontend)
  • Entity Increment Model
TP3
Création de deux tables via installer : “catalog_product_series”  et “vendor” : Implémentation des classes ORM associées
Création d’un attribut EAV “series” sur un produit via installer : Création d’un Source Model et Frontend Model pour cet attribut qui utilisent les données de la table “catalog_product_series”
Création d’une table d’associations entre “vendor” et “catalog_product_entity”, utilisation des Resource Models et Collections pour afficher les vendors pour un produit en front

Service Contracts, API et Services Web
Service Contracts
  • Définition, avantages, inconvénients
  • Composition d’un Service Contract : Data API, Service API
  • Tags dans les commentaires nécessaires pour la génération des Web Services
  • Implémentation des DTO (Data Transfer Objects) : “Custom Attributs” et “Extension Attributes”: déclaration et injection
  • Service API : Business Logic API et Repositories
  • Services Web (Publication d’un WS REST ou SOAP, Déclaration d’une méthode de webservice et mapping avec une interface Magento, REST : paramètres et requêtes via POST et PUT, SOAP: WSDL auto-généré et son URL, Gestion des ACL et authentification, Paramétrage en BO)
TP4
Utilisation d’un Repository existant pour effectuer des recherches
Création d’un Service Contract pour l’entité “vendor” créée précédemment
Création d’un DTO et d’un Repository
Publication des méthodes du Repository en tant que WebService
Test de l’API SOAP

Back-office
Présentation
Implémentation d’un Controller BO en tenant compte des ACL
Éléments récurrents: grilles et formulaires: UiComponents
  • Présentation des UiComponents dédiés: “listing” (grille) et “form” (formulaire) : Définition des composants enfants, Création des sources de données (composant dataSource et classe dataProvider), Exemples
  • Pour les grilles : Définitions des filtres et des colonnes, Autres composants moins complexes: actions en masse, paginations etc
  • Pour les formulaires : Déclaration des champs et leur organisation en fieldsets., Déclaration des boutons, Validation
System Configuration
  • Présentation de la configuration BO
  • Déclaration d’un point de config
  • Inclusion d’un Source Model et d’un Frontend Model
Menu : Configuration du menu de navigation en BO
ACL
  • Définition
  • Organisation des ACL par rôles
  • Exemples de contrôle des ACL: _isAllowed()
  • Configuration dans la BO
  • Création d’ACL
TP5
Gestion des entités précédemment créées “series” et “vendor”:
Création des grilles et formulaires
Ajout des liens dans le menu
Création et utilisation des ACL adaptées
Adaptation du WS précédemment créé pour utiliser ces ACL


Prochaines sessions

picto Du lundi 15/05 au vendredi 19/05 2017 Paris 2 500 € fleche S’inscrire à la session du lundi 15/05 au mardi 19/05
picto Du lundi 18/09 au vendredi 22/09 2017 Paris 2 500 € fleche S’inscrire à la session du lundi 18/09 au mardi 22/09
picto Du lundi 20/11 au vendredi 24/11 2017 Paris 2 500 € fleche S’inscrire à la session du lundi 20/11 au mardi 24/11
Proposer une session.

Pas de témoignage pour l'instant.

Cher(e) visiteur(euse),
Nous vous remercions pour l'intérêt porté à nos formations. La pré-inscription à une session de formation se fait via le formulaire d'inscription de la page formation.

La Convention de Formation Professionnelle Continue simplifiée vous sera envoyée par mail dans les 72H max. Votre inscription est considérée comme définitive, une fois cette convention signée par votre entreprise ou OPCA. La facture sera émise à l'issue de la formation, comme mentionnée dans nos conditions générales de vente.

A noter que les demandeurs d'emploi peuvent bénéficier d'une remise de 20% sur le prix public.

Pour toute information complémentaire ou demande de devis, n'hésitez pas à nous contacter au 01 53 34 66 10 ou à nous solliciter par mail.

A très bientôt dans l'un de nos centres de formation.
L'équipe Clever-Institut.

Les autres formations « e-commerce & omnicanal »  – Voir toutes les formations