Tworzymy moduł sklepu PrestaShop

,

prestashop sklep

Struktura plików modułu

Moduł sklepu PrestaShop składa się z wielu plików, które są przechowywane w folderze o nazwie takiej samej jak moduł. Cały folder modułu jest przechowywany w katalogu /modules

Główny plik modułu nazwa_modułu.php musi zaczynać się od kodu: <?php if(!defined('_PS_VERSION_')) exit;

który zabezpiecza możliwość załadowania pliku bezpośrednio.

Należy zauważyć, że zgodnie z wymogami PrestaShop Coding Standards, nie używamy znacznika zamykającego PHP.

Główna klasa modułu

PrestaShop używa programowania obiektowego, to znaczy kod sklepu budowany jest na obiektach. Obiekt w PHP jak i innych językach programowania definiuje się przez słówko class.

Główna klasa modułu musi posiadać taką samą nazwę jak moduł i folder.

class nazwa_modułu extends Module
{
}

Nasza klasa musi być rozszerzeniem klasy Module. Aby wykonać tak zwane dziedziczenie, po nazwie klasy dopisujemy słowo kluczowe extends czyli mamy extends Module

Konstruktor modułu

Konstruktor to funkcja w klasie, która jest automatycznie wykonywana przy tworzeniu nowego obiektu tej klasy.

 public function __construct()
  {
    $this->name = 'nazwa_modułu';
    $this->tab = 'front_office_features';
    $this->version = '1.0.0';
    $this->author = 'autor';
    $this->need_instance = 0;
    $this->ps_versions_compliancy = array('min' => '1.6', 'max' => _PS_VERSION_); 
    $this->bootstrap = true;
 
    parent::__construct();
 
    $this->displayName = $this->l('Nazwa modułu');
    $this->description = $this->l('Opis modułu.');
 
    $this->confirmUninstall = $this->l('Jesteś pewien, że chcesz odinstalować moduł?');
 
    if (!Configuration::get('nazwa_modułu_nazwa'))      
      $this->warning = $this->l('Nie podano nazwy');
  }

Moduł sklepu PrestaShop – jest to tylko minimum jakie musimy mieć aby zainstalować moduł.

Tabela dostępnych opcji dla atrybutu tab i ich odpowiednia sekcja na liście modułów.

atrybut tabsekcja modułu
administrationAdministracja
advertising_marketingMarketing i Reklama
analytics_statsAnalityka i Statystyka
billing_invoicingPodatki i Fakturowanie
checkoutKontrola
content_managementZarządzanie zawartością
dashboardPulpit
emailingWysyłanie e-maili i SMS
exportEksport
front_office_featuresFunkcjonalność sklepu
i18n_localizationLokalizacja
market_placeRynek
merchandizingMarketing
migration_toolsNarzędzia migracji
mobileMobilne
othersPozostałe moduły
payments_gatewaysPłatności i bramy, operatorzy
payment_securityBezpieczeństwo płatności
pricing_promotion Ceny i Promocje
quick_bulk_updateZbiorcze aktualizacje
search_filterWyszukiwanie i filtrowanie
seoOptymalizacja SEO
shipping_logisticsWysyłka i logistyka
slideshowsPokazy slajdów
smart_shoppingInteligentne zakupy
social_networksSieci społecznościowe

STRONNET Sylwia Płonka

Z pasji do informatyki Sylwia Płonka właściciel firmy STRONNET

1 Odpowiedz
  1. Admin
    Admin says:

    Plik modułu musi zawierać jeszcze funkcje install i utworzony tak zwany hak np. do stopki: registerHook('footer')

    function install()
        {
            if (!parent::install()
                 OR !$this->registerHook('footer')
            )
                return false;
            return true;
        }
    

Odpowiedz

Chcesz dołączyć do dyskusji?
Pisz śmiało!
Proszę, nie krępuj się pisać!

Dodaj komentarz

Twój adres email nie zostanie opublikowany.