od Podstaw
5 godz. 56 min · PHP · Full-stack i Programowanie
Patryk WaluśBackend DeveloperZanim przejdziemy do omawiania możliwości Magento, przedstawię Ci w jaki sposób skonfigurować środowisko developerskie oraz jak zainstalować nowy projekt. Omówimy też polecenia i narzędzia, które są przydatne podczas pracy developerów.
Rozpoczniemy od przedstawienia oraz omówienia funkcji poszczególnych katalogów, które znajdują się w projekcie. Po wstępie stworzymy swój pierwszy moduł oraz przedstawię podstawowe techniki wykorzystywane przez Magento do zarządzania konfiguracjami czy modułami.
Magento wykorzystuje bardzo popularny wzorzec MVC, który składa się z trzech elementów. Aby z łatwością rozumieć jak system obsługuje żądania HTTP najpierw przestawię ogólne działanie MVC, a następnie jak to działa w Magento.
Szczegółowe omówienie wzorca MVC rozpoczniemy od literki C czyli Controller'a. W tym rozdziale dowiesz się jak zarejestrować w systemie nową ścieżkę, jak pobierać parametry oraz w jaki sposób zwrócić rezultat odpowiedni dla danego przypadku.
Gdy już zarejestrujemy nową stronę, konieczne będzie zdefiniowanie jej wyglądu. Dlatego też, przedstawię Ci jak to zrobić oraz jakie możliwości Magento udostępnia do manipulacji układem stron. Omówię różnice między kontenerem, a blokiem oraz pokaże jak modyfikować tagi w sekcji.
Aby wcześniej dodana strona była funkcjonalna, konieczna jest jej integracja z bazą danych. Do tego celu stworzymy m.in. Model, za pomocą którego będziemy komunikować się z MySQL. Przedstawię Ci też dobre praktyki, które pozwalają na tworzenie kodu wysokiej jakości.
W ostatnim rozdziale omówimy konfigurację nowego motywu w Magento. Pozwoli Ci to zrozumieć jak tworzyć różne wersje wyglądu dla sklepów internetowych.
Ten kurs w szczególności przyda się osobom, które chcą poznać podstawy framework'a Magento 2. Przedstawione w nim fundamentalne informacje pomogą zrozumieć sposób działania systemu, a także w jaki sposób można dodawać czy rozszerzać swój projekt o nowe funkcjonalności.
Kryteria zaimplementowane w repozytorium
Brand repozytorium interfejs do tego celu dodamy nową metodę GET.
List następnie parametr że wykorzystamy taki interfejs jak kryteria.
Interfejs z to framework API
w następnej lekcji pokaże w jaki sposób budować zapytania za pomocą Twittera.
Nie jest to natomiast teraz istotne skąd figurują.
Następnie zmienną i zwróćmy rezultat
i rezultatem będzie nowy obiekt który stworzymy i przekażemy
tutaj interfejs do niego czyli Brand Search.
Resort.
Interfejs.
Obiekt który będzie im prezentował ten interfejs będzie zawierał elementy
interfejsów danych czyli data Brand interface.
Dlatego też stwórzmy na początku ten interfejs przechodzimy do brand ABC Data
i dodajemy nowy interfejs Brand Wizards interfejs możemy ustawić od razu
żeby to był interfejs ani klasa klikamy OK.
A następnie rozszerzyły podany interfejs o tzw.
. Resort.
Interfejs też ma to framework API.
Tak naprawdę w tym interfejsie znajdują się tutaj takie metody jak asystent 600 S.
Natomiast dotyczą one jak tutaj komentarzy
jest wskazane interfejsów to framework API ekspresję Data Interface.
Natomiast jeśli byśmy chcieli aby nasz edytor kodu podpowiadał nam że jeśli
repozytorium zwróci nam obiekt który prezentuje Brand Services
Interface to żeby nam od razu odpowiedziało że zawarte w nim elementy to
są interfejsy danych w tym przypadku marki.
Dlatego też w naszym interfejsie dodamy metodę Get It.
I dodajmy do niej komentarz
zmienimy aby nie było już te ekscesy był interfejs tylko Brand.
Interfejs.
I następnie że jest to wartość tablicy
czyli zostanie zwrócona tablica z elementami interfejs.
Dodatkowo napiszemy metodę.
Znamy pierwszy
Block i następnie będzie konieczność podania nowej informacji że przekażemy do
metody elementy które są tak naprawdę Brand.
Interfejsem i że to jest też wartość tablicy.
Dzięki temu gdy będziemy korzystać z interfejs edytor nam odpowiednio podpowie
że właśnie takie elementy w nim są zawarte.
Teraz konieczne będzie stworzenie
implementacji dla interfejsu czyli interfejs.
Dlatego też przechodzimy do modelu data i
tutaj dodamy nową klasę którą nazwałem Brand.
Serwis.
Resort.
I następnie wykorzystamy interfejs Brand.
Serge interfejs i nie musimy im prezentować tych metod które są zawarte
w interfejsie realizator interfejs lub też jego rodziców.
Wystarczy że wykorzystamy klasę.
Serge.
Rezultaty to framework API.
Dzięki temu nie musimy nic komentować a
jak przejdziemy do tej klasy to możemy zauważyć że znajduje się tutaj
implementacja właśnie metod zawartych w interfejsy powyższych.
Wracamy więc do pracy.
I teraz zanim przejdziemy dalej skąd figuruje Independence Jackson żeby
to wiedziało co ma załadować jeśli będziemy chcieli skorzystać z interfejsu.
Dlatego też przejdźmy najpierw jeszcze do
interfejsu skupimy referencje przejdziemy do XML i dodamy kolejne preferencje.
Następnie Forza wskazujemy na interfejs
Brand Search czyli interfejs i wrócimy jeszcze do klasy która
komplementuje ten interfejs Skopje referencje i przekażemy do atrybutów typu.
Teraz przejdziemy do repozytorium i zaprezentujemy nową metodę.
To my ją sobie.
Po zadaniu metody papież podkreśla że
brakuje interfejsu brat fakt że nie może go załadować.
Wróćmy więc do interfejsu repozytorium i sprawdźmy.
A tak rzeczywiście nie dostaliśmy
i portu klasy ponieważ dopiero co ją stworzyliśmy.
Dlatego też wrócimy jeszcze do
implementacji repozytorium jeśli ten wpis i założymy na nowo.
Brand Serge albo po prostu tą metodę i jeszcze raz ją stwórzmy.
I teraz poprawnie zostały załączone wszystkie potrzebne im porty.
Do implementacji tej metody konieczne
będzie wykorzystanie kolekcji z której wiemy jak już korzystać.
Dodajemy Collection Collection i następnie słowo Factory.
Aby pobrać nowy obiekt fabryki
musimy tutaj skonfigurować pełną nazwę dlatego też kupujemy
Brand model Records modele brand i wkładamy w to miejsce dodamy zmienną.
Konieczne będzie jeszcze dodanie fabryki
dla Brand interface ponieważ wypowiedziane już elementy z kolekcji konieczne będzie
ich do interfejsu danych a następnie wstawienie ich do właśnie tego interfejsu.
Dlatego też dodajemy fabrykę dla tych obiektów.
I na samym końcu konieczna będzie klasa Collection.
Procesor.
O której za chwilę powiem więcej.
Dodajmy Pozostałe atrybuty do klas i przejdźmy do implementacji metody GPS.
Zacznijmy od stworzenia nowego obiektu kolekcji.
Wykorzystujemy więc Collection Factory i metodę Create.
Rezultat do kolekcji.
I następnie teraz wykorzystamy właśnie obiekt klasy Collection procesor.
Któremu za pomocą metody proces przekażemy
serbski teoria parametru metody GPS i kolekcję.
Którą przed chwilą stworzyliśmy i teraz metoda proces na podstawie
serbski seria dodał odpowiednie warunki czy też sortowania do kolekcji
dzięki czemu nie będziemy musieli nic więcej hodować.
Sam mechanizm skopiowania do odpowiednich warunków jest zawarty w tej metodzie.
Po wykonaniu tej metody możemy pobrać elementy z bazy danych.
Możemy to zrobić za pomocą instrukcji w formacie.
Dlatego też ją wykorzystamy i następnie przekażemy elementy do tablicy
którą za chwilę stworzymy i następnie przekażemy do obiektu Brand Records.
Dodajmy tablicy.
I następnie do tablicy Teraz przekażemy.
Tylko właśnie przekażemy nie modele marek
tylko wykorzystamy metodę dyskietek obiekt.
Która smakuje nam nasz model do odpowiedniego interfejsu danych.
Następnie skorzystamy z fabryki do Sergio Rico oraz interfejs Factory.
Za pomocą tej metody dostaniemy odpowiedni obiekt.
Oznaczyć ten obiekt aby
edytor kodów wiedział jaka klasa jest tam przechowywana.
Dlatego też Brand Search interface sam komentarz i mamy do wyboru
metody takie jak już widzieliśmy wcześniej czyli
my z racji że będziemy pobierać tak naprawdę przepisywać
dane które są w kolekcji to skorzystamy z metody Seti
I do niej przekażemy wszystkie elementy które pobrała nasza kolekcja.
Następnie konieczne będzie też wykorzystanie metody.
SEB to skąd i za pomocą kolekcji.
I metody GET Six.
Zbierzemy informacje o ilości dostępnych marek w bazie danych.
Dodatkowo do rezultatu brat wpisał
za pomocą metody kryteria przekażemy obiekt Interia.
Dzięki temu też później w innych klasach
będziemy mieli dostęp za pomocą metody kryteria aby sprawdzić np.
na podstawie jakich warunków zostały
pobrane odpowiednie interfejsy danych i na koniec trzeba zwrócić tylko obiekt
Brand Search Records następnej lekcji pokaże w jaki sposób korzystać z Twittera.
Natomiast zanim przejdziemy do następnej
lekcji bardzo proszę wyczyścić za pomocą komendy chcę i podaj typ konflikt oraz
katalog Johna Wrighta żebyśmy mogli przejść od razu do rzeczy.