wdrożenia PrestaShop

po dodaniu hooka nie dołączają się style

  • 8 Odpowiedzi
  • 3132 Wyświetleń

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

*

Offline 1q2w3e4r

  • Tubylec
  • ****
  • 104
  • 0
po dodaniu hooka nie dołączają się style
« dnia: Luty 06, 2015, 01:44:54 pm »

Witam

Wersja Prestashop 1.6.0.11
Potrzebuję przenieść menu (blocktopmenu) w inne miejsce w tym celu utworzyłem w bazie nowy HOOK o nazwie: displayNavMenu i przypisałem do niego blocktopmenu, następnie utworzyłem w blocktopmenu obsługę tego hooka:
 
Cytuj
public function hookDisplayNavMenu($params)
{
      return $this->hookDisplayTop($params);
}


Niby wszystko jest ok bo wyświetla się menu w odpowiednim miejscu ale jest bez CSS i JS. Nie dołączają się te pliki w kodzie strony i menu jest jako lista nieostylowana, dlaczego tak się dzieje?
 
Pozdrawiam

*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: po dodaniu hooka nie dołączają się style
« Odpowiedź #1 dnia: Luty 06, 2015, 02:14:38 pm »
"utworzylem w bazie hook" ? po co sobie utrudniac zycie? wystarczylo przeczytac tutka http://prestashopforum.pl/index.php/topic,11377.0.html (ten do 1.5 ale analogocznie dziala pod 1.6

a co do tego, ze nie ma css, ze nie ma js... a hook jest rejestrowalny w Header? ma przypisane funkcje dla headera z zagniezdzeniem js i css? a css ma odpoweidnie klasy teraz? nie odnosi sie gdzies do jakiegos glownego #id ?
design4VIP z innej strony...

*

Offline 1q2w3e4r

  • Tubylec
  • ****
  • 104
  • 0
Odp: po dodaniu hooka nie dołączają się style
« Odpowiedź #2 dnia: Luty 06, 2015, 03:36:49 pm »

Zrobiłem tak jak w tym z Twojego linka i niestety dalej tak samo.
Cytuj
a hook jest rejestrowalny w Header? ma przypisane funkcje dla headera z zagniezdzeniem js i css? a css ma odpoweidnie klasy teraz? nie odnosi sie gdzies do jakiegos glownego #id ?
Tak, jest rejestrowalny w header ponieważ oryginalny hookDisplayTop działa normalnie.


Ja korzystałem z innego tutka dla wersji 1.6:
Cytuj
http://tomasznicieja.com/blog/jak-w-prestashop-przeniesc-koszyk-do-menu


Tak wygląda dla HOOK_TOP:
Cytuj

   public function hookDisplayTop($param)
   {
      $this->user_groups =  ($this->context->customer->isLogged() ? $this->context->customer->getGroups() : array(Configuration::get('PS_UNIDENTIFIED_GROUP')));
      $this->page_name = Dispatcher::getInstance()->getController();
      if (!$this->isCached('blocktopmenu.tpl', $this->getCacheId()))
      {
         if (Tools::isEmpty($this->_menu))
            $this->makeMenu();


         $shop_id = (int)$this->context->shop->id;
         $shop_group_id = Shop::getGroupFromShop($shop_id);


         $this->smarty->assign('MENU_SEARCH', Configuration::get('MOD_BLOCKTOPMENU_SEARCH', null, $shop_group_id, $shop_id));
         $this->smarty->assign('MENU', $this->_menu);
         $this->smarty->assign('this_path', $this->_path);
      }


      $this->context->controller->addJS($this->_path.'js/hoverIntent.js');
      $this->context->controller->addJS($this->_path.'js/superfish-modified.js');
      $this->context->controller->addJS($this->_path.'js/blocktopmenu.js');
      $this->context->controller->addCSS($this->_path.'css/blocktopmenu.css');
      $this->context->controller->addCSS($this->_path.'css/superfish-modified.css');


      $html = $this->display(__FILE__, 'blocktopmenu.tpl', $this->getCacheId());
      return $html;
   }


Ja potrzebuje nowy hook ale o takiej samej treści i konfiguracji więc obsługuję go tak:
Cytuj

   public function hookDisplayNavMenu($params)
   {
            return $this->hookDisplayTop($params);
   }


Problem w tym, że nie ładuje do headera styli:

Cytuj
      $this->context->controller->addJS($this->_path.'js/hoverIntent.js');
      $this->context->controller->addJS($this->_path.'js/superfish-modified.js');
      $this->context->controller->addJS($this->_path.'js/blocktopmenu.js');
      $this->context->controller->addCSS($this->_path.'css/blocktopmenu.css');
      $this->context->controller->addCSS($this->_path.'css/superfish-modified.css');

*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: po dodaniu hooka nie dołączają się style
« Odpowiedź #3 dnia: Luty 07, 2015, 02:58:20 pm »
ale3 z tego co widze to nie widze ladowania do displayHeader tylko pliki js i css ladowane sa (niepoprawnie) do top. stworz sobie nowego kontenera (public function) dla headera, dodaj go w czsie instalacji i tam przenies te pliki styli i skryptow, wyrzuc je z top.
design4VIP z innej strony...

*

Offline 1q2w3e4r

  • Tubylec
  • ****
  • 104
  • 0
Odp: po dodaniu hooka nie dołączają się style
« Odpowiedź #4 dnia: Luty 08, 2015, 11:07:09 pm »
hookDisplayTop to domyślny hook modułu blocktopmenu więc musi być dobrze zrobione - nawet działa.
Jak możesz to zerknij go niego na chwilę. Dzięki.


   public function hookDisplayNavMenu($params)
   {
            return $this->hookDisplayTop($params);
   }

*

Offline Tidus

  • Nowy
  • *
  • 6
  • 0
  • prestashop
  • PrestaShop: 1.6
  • Status: Programista
Odp: po dodaniu hooka nie dołączają się style
« Odpowiedź #5 dnia: Listopad 24, 2015, 11:39:31 am »
Może nieco temat odświeżę, mam podobny problem, stworzyłem Hook dla pozycji menu, niestety nie ładuje mi js i styli, tzn nagłówki strony normalnie, a potem jest pusta strona i błąd js_def ma ktoś pomysł jak to rozwiązać?

*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: po dodaniu hooka nie dołączają się style
« Odpowiedź #6 dnia: Listopad 24, 2015, 12:36:04 pm »
"błąd js_def" za wiele nie mowi... pomysly? podaj linka do sklepu zeby mozna bylo podgladnac zrodlo i konsole albo opisz dokladnie co dodawales, w jaki sposob, gdzie. jak i gdzie umeisciles hook, jak go zaimplementowales w kontroelrze modulu, gdzie i w jaki sposob dodajesz pliki CSS, JS.... no, moze lepiej podaj linka d sklepu ;)
design4VIP z innej strony...

*

Offline Tidus

  • Nowy
  • *
  • 6
  • 0
  • prestashop
  • PrestaShop: 1.6
  • Status: Programista
Odp: po dodaniu hooka nie dołączają się style
« Odpowiedź #7 dnia: Listopad 24, 2015, 02:13:35 pm »
Niestety sklep na localhost, ale sprawa ma się tego typu, muszę dla menu mieć inną pozycję dlatego że chce by znajdowało się poza kontenerem, by móc na całej szerokości dać tło, oczywiście korzystam z podstawowego tematu Bootstrap, wszystkie pliki CSS oraz JS dodane do header nie były ruszane przez mnie. W bloku modułu topmenu.php dodałem
   public function hookDisplayMenug($params)
{
return $this->hookDisplayMenug($params);
}


następnie w header.tpl dodałem w miejscu które chciałem, by menu było umieszczone {hook h="displayMenug"}


korzystałem z jednego tutoriala który był umieszczony powyżej, czy coś mogłem pominąć? Konsola pokazuje błąd 500 po załadowaniu górnej części strony. Poniżej biało

*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: po dodaniu hooka nie dołączają się style
« Odpowiedź #8 dnia: Listopad 25, 2015, 09:25:04 am »
tylko jeszcze pytanie w ktorym dokladnie miejscu dodales tego hook? czy aby nie w <head> ?
design4VIP z innej strony...