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.
Udało nam się skonfigurować środowisko
deweloperskie zainstalowali to odpowiedzieliśmy o ostrych narzędziach
a także o tym jakie są dostępne tryby zaczęto teraz w tym rozdziale zajmiemy się
opowiadaniem jak wygląda struktura projektu.
Struktura pojedynczego modułu.
Jak zarejestrować moduł w systemie agentom
oraz także w jaki sposób ustalane są pliki XML.
Powiemy także kilka słów o tym jak wygląda podział systemu na strefy.
Przejdźmy teraz do edytora kodu.
Po lewej stronie pokazuje się lista
dostępnych folderów jakie są w naszym projekcie.
Pierwszym liderem jest folder UP a w tym folderze
możemy dodawać swoje własne moduły które rozszerzają pewne funkcjonalności ma to
lub dodawać całkowicie nowe funkcjonalności.
Pierwszym zagęszczenie w tym folderze jest
nazwa Dora czyli firma która podaje dane dany moduł.
Następnym zakażeniu pojawia się nazwa
danego modułu czyli w tym przypadku naszym modułem jest Web Display moc.
Jeśli będziemy chcieli rozszerzać kolejne
funkcjonalności lub dodawać nowe moduły to jeśli będzie to robione w obrębie ePUAP
dodajemy nowy moduł właśnie w tym zamierzeniu dokładnie jak to zrobić powiem
w następnej lekcji w kolejnym folderze wartym wspomnienia
jest folder Design w tym folderze znajdują się pliki HTML oraz pliki audio czyli
układ stron dzięki którym możemy rozszerzać domyślne motywy.
Dla przykładu Teraz one są puste natomiast w ostatnim rozdziale odnośnie
motywów będziemy w tym folderze dokonywać pewnych zmian.
Następnym liderem który warto wspomnieć
jest folder C w którym zawarta jest konfiguracja naszego systemu.
Najważniejszym z plików jest plik w PHP w
którym zawarta jest konfiguracja oraz dane dostępowe np.
do bazy danych czy też jakie cele są włączone w tym momencie.
Kolejnym ważnym plikiem jest konflikt PHP
w którym zawarte są informacje o włączonych motywach.
Jeśli jest Jedynka przy nazwie danego
modułu to znaczy że jest on włączony jeśli 0 to jest wyłączone.
Możemy bezpośrednio zmieniać się w tym
pliku Status danego modułu lub też przez komendę wynajęto moduł tzw.
oraz najbliższa ta komenda właśnie powoduje zmianę w tym pliku.
Kolejnym folder jest folder i 18 n.
Jest to skrót od internetowej Station w którym zawarte są tłumaczenia językowe
w tym folderze znajduje się akurat plik pl pl.
Kropka CFA.
Czyli mamy w nim zawarte tłumaczenia językowe na wersji polskiej po lewej
stronie znajduje się wyrażenie angielskie słowo egzemplarz i poprawę np.
czyli przetłumaczone słowo Excel na przykład po polsku.
Wracając do głównego folderu naszego projektu widzimy folder bin w tym folderze
znajduje się plik wykonywany to który zawierał wcześniej omawiane komendy.
W następnej kolejności znajduje się folder
Def w tym folderze możemy znaleźć testy oraz pewne narzędzia które pozwalają np.
przygotować Development dla Macintosh czyli może się tu znaleźć np.
konfiguracja kapitana czy też takiego
narzędzia jak grunt w poprzednich lekcjach oglądaliśmy coś do folderu generator w
którym znajdują się wygenerowane przez to pliki klas takie jak np.
License Factory czyli jest to fabryka lub też inne receptory proxy czyli są to tak
zwane skomplikowane wygenerowane automatycznie pliki klas.
Następnie mamy folder ZIP w którym znajdują się biblioteki takie jak qwerty
czyli Gwardia jest tutaj są to pliki nie owalne dołączone przez zespół
może to i one są wykorzystywane później przez system.
Następnie znajduje się folder PHP Server
który zawiera przygotowany przez serwer PHP.
Jednak jest on nieużywany z racji na wolne działanie oraz bezpieczeństwo.
Lepiej wykorzystać takie serwery jak
engine lub Apache w folderze PAP byliśmy już w poprzednich lekcjach.
Znamy folder w którym zawarte są wygenerowane pliki
statyczne takie jak James HTML ale oprócz tego folderu warto wspomnieć o folderze
Error w którym zawarte są konfiguracje stron błędów czyli np.
dla błędu 404 czy 503 wyświetlane są pewne strony nic z tego konfiguracja
w folderze media możemy natomiast znaleźć pewne pliki zdjęć czy też np.
tutaj wygenerowane cache dla zdjęć danych produktów.
Możemy tutaj dodawać swoje własne katalogi czy też zdjęcia i następnie załączyć je na
sklepie internetowym w folderze PAP znajduje się też plik index
php o którym warto wspomnieć dlatego że jest
to główne wejście do wszystkich żądań HTTP czyli jeśli wchodzimy na stronę
Web czy też wykonujemy zapytanie API to właśnie przechodzi to wszystko
przez ten plik w tym pliku znajduje się też ładowanie całej aplikacji to i obsługa
tego danego zapytania w kolejnym folderze czyli folderze
znajdują się pliki instalacyjne może to które były wykorzystywane przez nas
podczas instalacji może to w tym folderze na tę chwilę.
W sumie podczas obcowania nie będziemy w
ogóle się poruszać w folderze War znajdują się pliki tymczasowe np.
login czy np.
informacje o sesji.
Są to pliki tymczasowe więc możemy je usuwać np.
podczas wykonywania metody czy też Flash.
Usuwane są pliki z folderu dzięki czemu to musi na nowo załadować
system lub pewne elementy systemu i jeśli je załamuje to ona później ląduje
właśnie w to miejsce w folderze Lock też już byliśmy ponieważ w nim znajdował się
plik Lock znalazła się informacja o błędzie czy tam wyjątku który spowodowali.
W klasie di moc.
Ostatnim darem jaki widzimy jest folder mentor.
W tym folderze znajdują się wszystkie moduły wymagane przez NATO i te moduły są
zarządzane przez narzędzie kompozytor on aktualizuje czy
też dodaje usuwa moduły w zależności od potrzeb.
Te moduły nie są owalne czyli nie możemy
zmieniać się w tych modułu żadnych plików ponieważ aktualizacja np.
danego modułu spowoduje wpisanie tych zmian.
Więc jeśli chcemy napisać jakąś funkcjonalność to czy funkcjonalność
innego modułu konieczne jest stworzenie własnego modułu w folderze.
Kod następnej lekcji zanim przejdziemy do folderu i rejestrowania swojego własnego
modułu pokaże na przykładzie modułu z Ventura to jak wygląda struktura takiego
modułu i jak się ze znajomymi już tą strukturą.
Opowiem jakie są dostępne foldery oraz co w tych mniej więcej się znajduje.
To właśnie zarejestruje nowy moduł wynajęto.