Implementacja Magento 2.X do rozwiązań eCommerce ( implmagforecom | 14 hours )

Prerequisites:

Dobra znajomość PHP

Overview:
  • Magento jest jedną z najpopularniejszych platform e-commerce typu Open Source. Szacuje się, że obecnie ok. 30% wszystkich sklepów internetowych korzysta z jej rozwiązań wliczając w takie marki jak BurgerKing, CocaCola, Canon, Quinny, czy SEAT. 

Sukces Magento tkwi w jej prostocie oraz bardzo dużej liczbie dodatków, pozwalającej na dostosowanie platformy praktycznie do każdego biznesu. Magento umożliwia pełne zarządzanie procesem sprzedaży w kanale eCommerce, zaczynając od zarządzania stoną i katalogiem produktów, poprzez tracking zamówienia i płatności, kończąć na generowaniu raportów i działaniach marketingowych.

Szkolenie, które oferujemy dotyczy technicznych kwestii związanych z implementacją platformy oraz dostosowaniem jej pod wymagania danego biznesu. Skierowane jest przede wszystkim do programistów, osób odpowiedzialnych za wdrożenie platformy, jej utrzymanie i rozwój.

Po kursie uczestnicy posiądą praktyczną wiedzę dotyczącą:

  • struktury Magento 2.X oraz mechanizmów implementacji,
  • instalacji środowiska produkcyjnego oraz jego konfiguracji,
  • pracy nad jakością kodu, debugging, monitorowania działanie systemu,
  • implementacji zaawansowanych modułów,
  • zindywidualizowania strony pod daną branżę.

Jeśli decydują się Państwo na szkolenie zamknięte, plan może być zmodyfikowany i dostosowany do specyfika konkretnej branży.

Course Outline:

Dzień I

Wprowadzenie do Magento

  • Szybki opis Magento 2
  • Porównanie wersji Community i Commerce
  • Pricing Magento Commerce
  • Magento Commerce Cloud
  • Różnice w stosunku do Magento 1

Budowa Magento 2

  • Omówienie wzorca MVVM
  • Struktura projektu
  • Zarządzanie zależnościami (composer, PSR-4 Autoloader)
  • Struktura pojedynczego modułu
  • Rejestracja modułu
  • Omównie Websites, Store Groups, Store Views
    • Kilka sklepów w jednej instancji Magento 2
    • Wielojęzyczność
    • Config scopes

Zaawansowane Magento 2 - Baza danych

  • Tabele konfiguracyjne (ustawienia, wersjonowanie modułów)
  • Weryfikacja wersji modułu w bazie danych, stworzenie własnej konfiguracji w panelu administracyjnym, omówienie ACL
  • Skrypty Setup
  • Skrypt UpgradeSchema
  • Persistence Layer
  • Strworzenie warstwy persistence (Model, ResourceModel, Collection)
  • Omówienie wzorca EAV
  • EAV w Magento2
  • Rodzaje encji EAV w Magento2
  • Zestawy cech
  • Extension attributes
  • Tabele płaskie
  • Database sharding

Zaawansowane Magento 2 - PHP

Zarządzanie zależnościami klas (Service Contract, omówienie wzorców Dependency Injection, Dependency Inversion, omówienie jak działa Dependency Injection w M2, ObjectManager)

Generowanie kodu

  • Factory
  • Interceptor
  • Proxy

Magento 2 CLI

  • Omówienie funkcji
  • Stworzenie własnej komendy tworzącej obiekty modelu
  • Kontrolery w Magento 2
  • Stworzenie własnego kontrolera frontend
  • Własny logger w Magento 2
  • Sposoby rozszerzania Magento - nadpisanie, plugin (omówienie wzorca Interceptor), obserwacja eventu (omówienie wzorca Observer)
  • Stworzenie własnego Observera oraz własnego Eventu (w kontrolerze) oraz pluginu na własnym kontrolerze frontend oraz loggera dla obu klas

Dzień II

Zaawansowane Magento 2 - frontend

  • Themes
  • Elementy frontend modułów, layouty, bloki, view modele
  • Stworzenie template, view modelu i wyświetlenie obiektów z kolekcji
  • Preprocesor Less
  • Dodanie styli LESS do widoku
  • RequireJS
  • KnockoutJS
  • UI Components
  • Generowanie plików statycznych

Tryby pracy Magento 2

Sesja PHP

  • Sposoby przechowywania sesji
  • Konfiguracja Redis

Full Page Cache

  • FPC Magento2 (pliki, Redis, Varnish)
  • Konfiguracja Varnisha
  • Hole punching

Cron w Magento 2

  • Omówienie działania
  • Własny cronjob

Cache w Magento 2

  • Wbudowane rodzaje
  • Własny cache

Indexery Magento 2

REST oraz SOAP APIs w Magento 2

  • Omówienie sposobów autentykacji
  • Overview dostępnych metod
  • Definiowanie własnych endpointów API
  • Stworzenie Data Contractu i Service Contractu Repository, wpięcie metody get z Repository do WebAPI

Testy integracyjne, testy jednostkowe

Stworzenie przy pomocy UI Components listingu oraz formularza dla obiektów modelu

Blok: deploy automation & monitoring & testy wydajności:

Narzędzia do automatyzacji deploy: GitLab CI/CD, GitLab Runner

Jak przeprowadzić bezpieczny deploy z zerowym downtime, z zapewnieniem możliwości szybkiego rollback

Monitoring Magento ─ New Relic

Wydajność:

Testy za pomocą LoadImpact. Jak przygotować scenariusze i symulować ruch produkcyjny.

Cache warming dla Varnish

Sites Published:

Polska - Implementacja Magento 2.X do rozwiązań eCommerce