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.
Mówimy sobie teraz pewne ułatwienie w codziennej pracy dewelopera.
Może to mianowicie chodzi tutaj o pliki XML.
W pracy to często widzimy lub też modyfikuje pewne pliki XML.
Jest tych plików bardzo dużo ponieważ każdy z plików odpowiada za różne części
systemu i podczas takiej codziennej pracy gdy czujemy kod często
brakuje nam nie pamiętamy jak dokładnie wygląda składnia danego pliku.
Jakie są możliwe opcje czy wartości
i dlatego też edytor pomagają nam w tym aby nam podpowiadać jakie są dostępne
opcje lub też jeśli się pomyli to od razu widzimy że coś jest nie tak.
Dlatego też wykorzystamy w tej lekcji coś
takiego jak URL czyli uniform resort finansów które właśnie w połączeniu z
autorem kodu pozwalają na rywalizację bezpośrednio edytora kodu i odpowiadanie.
Zanim jednak przejdziemy do lekcji z
edytor kodu muszę tutaj wspomnieć że ja korzystam z edytora kodu Storm.
Jeśli korzystasz z Visual Studio kod też możliwe jest wykorzystanie tych URL
natomiast ja pokażę to tylko na przykładzie App Store.
Jak to wygląda.
Do tego bardzo Cię proszę skonfigurować.
Teraz swój projekt w ulubionym torze kodu tak żebyśmy mogli zacząć z nim prace
na potrzeby naszego przykładu przygotowałem sobie pewien moduł.
Znajduje się on w folderze App kod Web URL
dokładnie o co chodzi z tą strukturą i dlaczego w tym miejscu opowiem później.
Nie jest to teraz natomiast ważne.
Ważne jest to że w pliku XML chodzi tutaj właściwie o zawartość tego
pliku możemy znaleźć coś takiego jak konflikt i następnie
przesunięty ekran w prawo a znajduje się coś takiego jak nocne lokacje.
Zostaje tutaj podkreślone na czerwono
pewna wartość i ta wartość jest to właśnie URL.
Jest to lokalizacja do pliku ze schematem pliku XML.
Ten schemat zawiera definicje jakie są
dostępne wartości dla pliku XML czyli jakie są dostępne
tagi i jakie opcje i wartości dzięki czemu bezpośrednio w tytule kodu.
Jak już wspomniałem wcześniej możemy
możemy mieć podpowiedzi lub też rywalizację na bieżąco.
Na tę chwilę edytor Storm podkreśla to na czerwono znaczy że
nie jest to załadowane więc nie mamy tych podpowiedzi.
Dlatego też aby naprawić i żeby nie było
po prostu się na czerwono żeby nam to podpowiadał.
Konieczne jest wykonanie metody w konsoli.
Jest taka komendę jak Def URL katalog generator włączymy podpowiedź dotyczącą
jakie są opcje dla tej komendy i mamy dostępne takie opcje.
Argument który jest wymagany który wskazuje na lokalizację pewnego pliku
który właśnie zawiera listę wszystkich dostępnych URL czyli lokalizacji do tych
plików ze schematem XML i domyślną opcją jest też ID które jest wspierane.
Dla tej komendy czyli w tym przypadku możemy wykorzystać opcję Factor.
Wtedy ten plik XML zostanie wygenerowany pod ten edytor kodu.
Natomiast jeśli korzystasz z edytora vs KOD to możemy też podać właśnie tę opcję.
Dzięki temu też ten edytor będzie
podpowiadał nam tak jakby to było w formie.
Więc polecam wykonać właśnie tą metodę.
Ja też te komendy ja też sobie teraz
uruchomią jako argument podam ścieżkę do lokalizacji pliku ID XML.
Chwilkę to oczywiście może potrwać.
Natomiast po wygenerowania zaraz zobaczymy w formie co się dało i czy rzeczywiście ta
realizacja i podpowiedzi się poprawnie generują.
Po poprawnym wykonaniu komendy możemy przejść z powrotem do pliku XML
i jeśli tak jak tutaj widzisz na ekranie wartość URL nie jest już podkreślone na
czerwono to znaczy że wszystko zostało pomyślnie załadowane.
Możemy też w przypadku to sprawdzić w
zakładce Language framework z angielskim jest że zostały dodane takie właśnie
lokalizacje na podstawie URL czyli mamy np.
uran który odpowiada za
plik dotyczący kolejek i po prawej stronie znajduje się lokalizacja tego pliku.
Dzięki temu Storm wie gdzie się to znajduje.
Uran nie jest podkreślone na czerwono więc sprawdźmy czy teraz to działa jak otworze.
Tak pojawiają się nam dostępne opcje które
możemy właśnie w tym zakresie wykorzystać ale jest to np.
typ preferencji Virtual typ oczywiście co
to jest będzie opowiedziane to później nie jest to ważne ale dla przykładu np.
typ nam tutaj podajemy zazwyczaj klasę i
też już pierwszy tor podpowiada nam dostępne klasy.
Jest to bardzo przydatne i zalecam aby doprowadzić do tego stanu.