SFSYLIUS | Créer une boutique e-commerce avec Symfony et Sylius

  • Ce cours de quatre jours est dédié à Symfony et Sylius. C'est la formation parfaite pour maîtriser tous les concepts fondamentaux et les outils les plus avancés. A l'issue de cet atelier, vous serez autonome sur le framework eCommerce basé sur Symfony !
  • Prérequis

    Maîtrise du langage PHP
  • Objectifs

    Cette formation intensive de quatre jours combine à la fois les bases de Symfony et celles de Sylius. Elle couvre tous les sujets fondamentaux de ces Frameworks pour vous permettre de créer votre boutique eCommerce. Vous commencerez par les bases comme la navigation, la structure des répertoires et la création de vos toutes premières pages Web dynamiques avec Twig. Ensuite, vous plongerez plus profondément dans des sujets et des outils plus avancés de Symfony et de Sylius, comme l'authentification et les autorisations, l'injection de dépendances, les tests automatisés et la création de catalogues, entre autres. Cette formation est dispensée par nos formateurs experts et contributeurs Symfony/Sylius, qui aiment partager leur expérience, leurs bonnes pratiques ainsi que les trucs et astuces pour vous aider à être plus efficace et autonome.

Programme détaillé

Découverte de Symfony

  • Comment gérer la requête HTTP - response workflow
  • Routing .
  • Meilleures pratiques pour vos contrôleurs et leurs capacités
  • Bundles et Maker Bundle

Twig

  • Introduction à Twig
  • Passez un contexte à vos modèles depuis vos contrôleurs
  • Utilisez des techniques de mise en page avec héritage et inclusions de templates pour réduire la taille de vos templates
  • Remplacer les templates directs
  • De bonnes solutions pour trouver de l'aide pour vos templates via la console Symfony ou le web profiler

Exercises

  • Créer un projet de composer
  • Création d'un controler + route personnalisée et d'une vue (en utilisant également path())

Database

  • Introduction à Doctrine
  • Établir et gérer les relations entre 2 entités
  • Stockez les enregistrements dans la base de données à l'aide d'un controller.
  • Récupérer des enregistrements de la base de données à l'aide de requêtes standard ou personnalisées (repositories)
  • Parlez de différents fichiers de cartographie (Sylius n'utilise pas d'annotations)
  • Schema Update vs Migration
  • Introduction aux fixtures

DIC

  • Introduction à l'injection de dépendances et aux services Symfony
  • Utilisez la meilleure méthode pour déterminer les services disponibles
  • Utilisez "autowiring" pour injecter des dépendances dans un constructeur, un setter ou un attribut
  • Vérifiez la configuration de vos services
  • Comprendre la frontière entre les paramètres de service et les variables d'environnement
  • decoration, tag, compiler pass
  • Exercise : TBD
  • Entity, repository, repository en tant que service, demande du controller

Introduction à Doctrine

  • Introduction à l'ORM Doctrine et configuration de votre projet pour accéder à la base de données
  • Créez vos propres entités et leur mapping avec le Symfony maker 
  • Créez et appliquez des migrations pour gérer l'état de votre base de données à tout moment
  • Gérer les relations entre 2 entités
  • Stocker des données dans la base de données à l'aide d'un controller
  • Récupérer des données de la base de données à l'aide de requêtes intégrées ou personnalisées

Introduction à Sylius

  • Vue d'ensemble de l'architecture Sylius
  • Bases techniques
  • Montrer comment Sylius est architecturé (rappel du premier jour : services, entities, controllers)
  • Models
  • Exercice : Installer Sylius
  • Demo Sylius
  • schema:update
  • fixtures:load

Produit

  • Présentation d'un produit Sylius
  • Création du premier produit Sylius
  • Ajouter une fonctionnalité à un produit Sylius (couleur)
  • Créez et appliquez des migrations pour gérer l'état de votre base de données
  • Taxonomy
  • Exercice : Same as below

Catalogue

  • Listes de produits
  • Liste des controlers
  • Pagination
  • Filtration
  • Exercice : Filtrer la liste des produits, par l'attribut ajouté

Tests

  • Introduction aux tests fonctionnels (doit être en lien avec la partie Sylius, phpspec, Behat)
  • Installation et présentation de l'outil "PHPUnit" pour exécuter vos tests automatisés
  • Rédigez votre premier test pour vérifier l'état du code pour une page Web donnée
  • Créer un "data provider" pour fournir des URL à analyser séquentiellement dans un test
  • Comment Sylius fonctionne ? 
  • Théorie des tests
  • Présentation de TDD et BDD
  • PHP SPEC ?

Variant

  • Variants et options
  • Associations and revues

Cart

  • Structure de commande and workflow
  • State machine et son utilisation dans Sylius
  • Processus de paiement
  • Paiement
  • Expédition

Security

  • Introduction à l'authentification et à l'autorisation dans un projet Symfony
  • Connexion au formulaire
  • Entité cliente
  • User Provider
  • Vérifiez les rôles de vos utilisateurs pour leur donner accès à certaines ressources de l'application
  • Créez un voter personnalisé pour gérer les situations rares qui nécessitent une authentification spéciale en PHP
  • Admin & clients

Paramétrage du magasin

  • Devises
  • Paramètres régionaux
  • Zones
  • Modes de paiement et d'expédition
  • Promotions & Taxes
  • Structure promotionnelle
  • Coupons
  • Structure des taxes
  • Mettre en place une TVA de 20% sur certains produits
  • Modifier la vue du produit pour afficher un ruban personnalisé s'il y a une promotion/coupon
  • Exercise : TBD

Extending Sylius

  • Travailler avec des ressources
  • Controler, route, factory
  • Introduction aux formulaires Symfony
  • Créez vos formulaires avec des configurations personnalisées
  • Extraire et gérer les données de vos formulaires
  • Configurer des contraintes natives pour valider les données provenant de l'utilisateur
  • Création de ressource gérable (carte de couleur)
  • Event Dispatcher
  • Sylius template events
  • Gestion des e-mails
  • API
  • Continuez avec l'administrateur : Canaux

Programme horaire

Jour 1

Jour 2

Jour 3

Jour 4

Appréciation de la formation

Moyenne globale :

  1. Evaluation de la pédagogie : N.C
  2. Evaluation du contenu : N.C
  3. Evaluation du rythme : N.C

Modalités pédagogiques et techniques

Notre cursus est conçu selon les principes suivant :

·        Répartition du temps d’apprentissage entre 40% de théorie & 60% de pratique
·        Mise en pratique par l’exercice
·        Échanges réguliers avec le formateur et les participants. Pas plus de 10 personnes par session.

Supports pédagogiques : le formateur partagera les supports de cours. Ils sont en anglais, mais le formateur parle français.
Pour les sessions à distance, les formations seront enregistrées et les vidéos seront disponibles sur une plateforme de révisions pendant 1 mois.

Matériel pédagogique : mise à disposition de l’ensemble du matériel collaboratif.

Technologie : Pour les formations à distance, un lien GoogleMeet est utilisé pour la projection du support de formation et pour soutenir les exercices pratiques.

Apprenant en situation de handicap, nous sommes à vos côtés pour identifier les aménagements les plus adaptés des modalités et des supports pédagogiques ou les aides humaines pertinentes.

Pour plus d’informations, contactez notre référent handicaplaurent.vaquette@sensiolabs.com / 01 86 65 72 25

Modalités évaluatives

  • Un contrôle de connaissances sous forme de QCM est réalisé pendant et à l’issue de la formation. Il permet de valider et de reprendre les points non assimilés.
  • Un certificat de réalisation d’une action de formation est transmis à l’apprenant.
  • Une copie de la feuille d’émargement est transmise au commanditaire.

Modalités d'inscription

  • Une commande doit être formulée via le formulaire d’inscription sur notre site, via le mail Training ou par téléphone.
  • L’inscription sera définitive après réception du devis signé et d’un paiement intégral ou d’un accord de prise en charge d’un OPCO, avant le début de la formation.
  • Télécharger le livret d’Accueil
  • Durée

    4 jour(s)
  • Niveau

    Débutant
  • Langues disponibles

    Français, Anglais
  • Pays disponibles

    Monde, France, Allemagne, Espagne, Royaume-Uni, États-Unis
A partir de 1 990,00 €
Aucune session prévue

Aucune session n'est prévue pour cette formation. Nous organisons cependant des sessions de formation sur mesure, n'hésitez pas à nous contacter pour plus d'informations !