Poradniki, Prestashop

Struktura prestashop, spis klas, kontrolerów i modeli

Lubię pracować z PrestaShop, ponieważ ma on nowoczesną i logiczną strukturę. Osiąga się to dzięki zastosowaniu modelu-widok kontrolera (MVC), tak popularnego dzisiaj.
W ramach tego tematu zostanie napisanych kilka instrukcji. Oczywiście, jeśli nie znasz podstaw OOP, lepiej zacząć od zapoznania się z teorią i najpierw zainstalować PrestaShop , postępując zgodnie z instrukcjami zamieszczonymi na moim blogu.
W PrestaShop powiązane pliki modeli (klasy) znajdują się w folderze / classes, widoku w podfolderze / themes i kontrolerów w / controllers. Pliki w katalogu głównym są potrzebne do wywołania kontrolera o tej samej nazwie (odbywa się to dla zgodności z wersją 1.3 wzwyż).

Na początku każdego pliku klasy lub kontrolera znajduje się komentarz, który stwierdza, że ​​modyfikowanie tych plików uniemożliwia dalszą aktualizację systemu. Ale z jakiegoś powodu fakt ten jest ignorowany przez wielu programistów (klienci są często proszeni o wypełnienie tej lub innej funkcjonalności, ponieważ poprzedni “specjalista” nie radził sobie z tym, często jesteś przerażony sposobem, w jaki twórcy starają się osiągnąć sukces w procesie wymyślania rowerów). Aby zmienić lub dodać funkcjonalność PrestaShop, musisz użyć magicznego taty / przesłonięcia, po wykonaniu tego prostego kroku opuścisz klienta z możliwością otrzymania aktualizacji systemu bez utraty dodatkowych funkcji. Nawiasem mówiąc, w folderze / modules nie można dodawać aktualizacji do modułów systemowych, dlatego należy skopiować szablon modułu do kompozycji, na przykład themes / myshop / modules / blockuserinfo / blockuserinfo.tpl. Zamiast tworzyć nowy moduł w katalogu głównym / modułach, na przykład modules / blockuserinfo2 / blockuserinfo.tpl, tak jak robią to niektórzy nowicjusze.

Widok – Widoki szablonu
Jest to najczęściej zmieniana część, ponieważ żaden standardowy magazyn nie jest uruchamiany w domyślnym szablonie. Dlatego najwięcej pytań powstaje właśnie z powodu zmiany sposobu wyświetlania. Z prostego: ” Jak zmienić logo sklepu na PrestaShop ” na bardziej złożone kwestie związane z systemem haczyków i layoutem dla Smarty.

Model – Model
Każda klasa w folderze / classes jest potomkiem klasy nadrzędnej ObjectModel i odpowiednio rozszerza funkcje CRUD (tworzenie, odczytywanie, aktualizowanie i usuwanie) dla dowolnej jednostki i sprawdzania poprawności danych. Tj. Każda klasa działa z oddzielnym obiektem – istotą bazy danych (najczęściej dla każdego takiego obiektu odpowiada osobna tabela) i przyjmuje identyfikator, na którym można znaleźć wymagany wiersz w tabeli. Na przykład w klasie Address: nazwa tabeli jest adresem, a identyfikator ciągu, który jest odbierany na wejściu, to id_address.
Схема классов
Nazwa klasy zbiega się z nazwą pliku php i kończy się na Core, więc można je ponownie zdefiniować w folderze / override / classes.
Zestawienie klas PrestaShop , opis ich głównych funkcji.

Kontrolery – kontrolery
Zadania kontrolerów odpowiadają modelowi MVC i służą do połączenia logiki systemu odzwierciedlonego w systemie klasy i prezentacji (szablony PrestaShop).
W pierwszej części nazwy znajduje się nazwa modelu klasowego, z którym kontroler współdziała. Na przykład AddressController.php służy do edycji informacji o adresie modelu object /classes/address.php; ProductController.php współpracuje z produktami sklepu (klasa /klasses/product.php) i tym podobne
Wszystkie kontrolery są potomkami klasy podstawowej FrontController, dlatego niezależnie od specyfiki przetwarzanej informacji, każdy ma wspólne funkcje.
Funkcje często używane w kontrolerach PrestaShop. (do opublikowania)

0 Komentarze
Udostępnij

Prestashop Developer