Jump to content

Recommended Posts

Hey.

Mam problem z przypisaniem modułu koszyka do nowej pozycji.

Do pliku blockcart.php dodałem:

 

 

    public function hookCartinmenu($params)
    {
        $params['blockcart_top'] = true;
        return $this->hookTop($params);
    }

 

 

Utworzyłem nowy hook w bazie o nazwie:

  displayCartinmenu

 

 

Kolejny wkleiłem kod w miejscu gdzie chce umieścić ten moduł:

    {hook h="displayCartinmenu"}

 

 

Wchodzę w pozycje modułów, klikam "transplant module" wybieram moduł: Block Cart następie pozycję:    {hook h="displayCartinmenu"}

 

Na koniec kilkam "Save" i wywala taki błąd...:

This module cannot be transplanted to this hook.

 

 

Share this post


Link to post
Share on other sites

no to jeszcze raz ;)

w bazie utworzyłeś: displayCartinmenu i to jest nazwa Twojego nowego hooka, nie z "hook" w nazwie, nie bez "display": displayCartinmenu, zatem w szablonach .tpl korzystasz z:

{hook exec='displayCartinmenu'}

aby moduł działał w tym hooku trzeba dodac support tej nowej pozycji, czyli utworzyć odpowiednią funkcję w kodzie .php modułu. aby utworzyć funkcję zaczepiającą moduł w danym hooku, do nazwy hooka dodajemy "hook", czyli hookdisplayCartinmenu($params)

 public function hookdisplayCartinmenu($params)
    {
        $params['blockcart_top'] = true;
        return $this->hookTop($params);
    }

Share this post


Link to post
Share on other sites

problem leży raczej w funkcji: hookdisplayCartinmenu($params)

jest tam kod:
 

        $params['blockcart_top'] = true;
        return $this->hookTop($params);

łatwiej moim zdaniem będzie przekopiować zawartość funkcji hookTop (w zasadzie rightCOlumn) do displayCartinmenu

		if (Configuration::get('PS_CATALOG_MODE'))
			return;

		// @todo this variable seems not used
		$this->smarty->assign(array(
			'order_page' => (strpos($_SERVER['PHP_SELF'], 'order') !== false),
			'blockcart_top' => (isset($params['blockcart_top']) && $params['blockcart_top']) ? true : false,
		));
		$this->assignContentVars($params);
		return $this->display(__FILE__, 'blockcart.tpl');

Share this post


Link to post
Share on other sites

 Share

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More