wdrożenia PrestaShop

Zaczepianie modułu

  • 3 Odpowiedzi
  • 2062 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

*

Offline kapka

  • Nowy
  • *
  • 4
  • 0
  • PrestaShop
  • PrestaShop: 1.7
  • Status: forum
Zaczepianie modułu
« dnia: Marzec 13, 2018, 10:11:07 am »
Witam,

 

Mam prośbę/pytanie o wyjaśnienie jak działają zaczepy w prestashop.

Kumpel poprosił mnie o przygotowanie dla niego prostego modułu (moduł nazywa się "środkipomocnicze").

Moduł jest przygotowany (formularz z dostępnym asortymentem...).

Teraz nie mogę sobie poradzić z podpięciem tego modułu do zaczepu "displayHome".

Problem polega na tym, że moduł jest wyświetlany ale wyświetla się na samym początku strony mimo, że w zapleczu strony wyświetla się w odpowiedniej pozycji.

Próbowałem zmieniać jego kolejność tzn. ustawic go pod slajderem przed slajderem itp. bez zmian. efekt można zobaczyć tu http://dawid.kapka.net.pl/dawid/

Poniżej funkcja install
public function install() {

  if (Shop::isFeatureActive()) {
Shop::setContext(Shop::CONTEXT_ALL);
  }

  if (!parent::install() || !$this->registerHook('displayHome')) {
return false;
  }

$this->installDb();
return true;
}

public function hookDisplayHome(){
return $this->displayFront();
}


Na stronie docelowej moduł będzie znajdował się na jednej z podstron i tylko tam.

I tak przy okazji jak można było skomplikować tak prostą sprawę (przykładowe rozwiązania to joomla, wordpress)?

Pozdrawiam i z góry dziękuję

*

Offline west

  • Administrator
  • Mieszkaniec
  • *****
  • 5,292
  • 106
  • Płeć: Mężczyzna
  • Europasaz.pl
    • PrestaShop, Wordpress, SMF, Woocomerce
  • PrestaShop: 8.0
  • Status: Programista
Odp: Zaczepianie modułu
« Odpowiedź #1 dnia: Marzec 14, 2018, 09:18:42 am »
Podejrzyj sobie index.tpl. Display home jest standardowo poniżej "tabów". Masz dwa wyjścia zmieniasz index.tpl lub dopisujesz własny hook i umieszczasz go gdzie chcesz.
p.s. programowanie hook w PS jest znacznie prostsze od WP czy Joomla. W PS 1.7 masz nawet widgety. Gdzie można zaczepiać moduł w instancji. 
MODUŁY | https://europasaz.pl |  SKLEPY INTERNETOWE | WSPARCIE TECHNICZNE | HOSTING | https://europasaz.pl 

*

Offline kapka

  • Nowy
  • *
  • 4
  • 0
  • PrestaShop
  • PrestaShop: 1.7
  • Status: forum
Odp: Zaczepianie modułu
« Odpowiedź #2 dnia: Marzec 14, 2018, 02:31:15 pm »
Dzięki za pomoc.

udało się ogarnąć ten temat.

Jednak mam jeszcze jedno pytanie w jaki sposób ustawić moduł aby wyświetlał się tylko na jednej podstronie?
Napisałem tez o tym na forum ogólnym pod tym adresem
https://www.prestashop.com/forums/topic/687200-mod%C3%B3%C5%82-tylko-w-jednej-pozycji-menu/

Wiem że w przemieszczaniu modułu są wyjątki które wybrałem w zasadzie zaznaczyłem wszystko z wyjątkiem CMS i teraz moduł wyświetla się na wszystkich podstronach z wyjątkiem strony głównej no i dobrze. Teraz potrzebuję wykluczyć z pozostałych podstron i pozostawić tylko w pozycji zaznaczonej na załączonym obrazku.

*

Offline west

  • Administrator
  • Mieszkaniec
  • *****
  • 5,292
  • 106
  • Płeć: Mężczyzna
  • Europasaz.pl
    • PrestaShop, Wordpress, SMF, Woocomerce
  • PrestaShop: 8.0
  • Status: Programista
Odp: Zaczepianie modułu
« Odpowiedź #3 dnia: Marzec 15, 2018, 07:52:26 am »
najprościej przez css klasy nadawane są tak:
<body id="cms" class="lang-pl country-pl currency-pln layout-full-width page-cms tax-display-enabled cms-id-1">albo warunkowo musisz wyciągnąć zmienną id cms i dodać warunek if
MODUŁY | https://europasaz.pl |  SKLEPY INTERNETOWE | WSPARCIE TECHNICZNE | HOSTING | https://europasaz.pl