wdrożenia PrestaShop

nowy haczyk {HOOK} Pomocy

  • 3 Odpowiedzi
  • 3945 Wyświetleń

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

*

Offline borton

  • Nowy
  • *
  • 5
  • 0
nowy haczyk {HOOK} Pomocy
« dnia: Październik 25, 2011, 07:18:44 pm »
Witam serdecznie.

Na wstepie (prestashop 1.3 bodajże)

Szukam, czytam i juz mam dosyć, poprostu brak pomysłów jak rozwiązać problem, a mianowicie.
Chce stworzyć mój własny haczyk o nazwie {$HOOK_MOJ} umieścić go w specjalnie do tego stworzonym miejscu, postępuje zgodnie tak jak jest to opisane na kilku stronach anglojezycznych opisujacych jak to wykonac.
strona miesci sie pod adresem http://presta3.eu4.pl

miejsce dla nowego haczyka miesci sie tam gdzie jest purpurowy pasek (łatwo znaleźć).

oczywiście dodałem rekord w bazie danych ps_hook:
id_hook:54, name:moj, deskription:moj, title:strona moja, position:1

do pliku header.php dodaje nastepującą linijke:

'HOOK_MOJ' => Module::hookExec('moj'),

do pliku blocksearsh.php (w katalogu /MODULES/BLOCKSEARSH) dodaje kolejno:
modyfikuje funkcje install:

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

oraz dodaje funkcje hookMoj

function hookMoj($params)
{
      global $smarty;
      $smarty->assign('ENT_QUOTES', ENT_QUOTES);
      $smarty->assign('search_ssl', (int)(isset($_SERVER['HTTPS']) && !empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off'));
      // check if library javascript load in header hook
      $this->_disabledSearchAjax();
      $smarty->assign('ajaxsearch', intval(Configuration::get('PS_SEARCH_AJAX')));
      return $this->display(__FILE__, 'blocksearch.tpl');
}


no i potem w templatce, np: header.tpl w katalogu /templates/diament/ (diament to moja skorka)

dodaje haczyk

<div>{$HOOK_MOJ}</div>

i... NIC!!!

czasami jak edytuje plik np w pajaczku, to wywala mi w panelu administracyjnym przy modulach (Błąd/ędy parsowania w module/ach  blocksearch)


Ludziska, prosze o pomoc, drugi dzień się z tym męcze i kiszka po całości.

*

Offline borton

  • Nowy
  • *
  • 5
  • 0
Odp: nowy haczyk {HOOK} Pomocy
« Odpowiedź #1 dnia: Październik 26, 2011, 04:54:32 pm »
nikt nie ma pomysłu??
Czy trzeba jakos dodatkowo przystosować css do tego haczyka??


jeszcze dodatkowe pytanie jesli mozna. Jak dodać <script> js we wnątrz strony? Jak dodaje bezpośrednio do header.tpl to strasznie mi strone rozwala, albo nawet jej nie wyswietla

*

Offline scholl

  • Wdrożenia PrestaShop
  • Mieszkaniec
  • *****
  • 511
  • 0
  • Płeć: Mężczyzna
Odp: nowy haczyk {HOOK} Pomocy
« Odpowiedź #2 dnia: Październik 26, 2011, 07:32:14 pm »
ok z tego co widzę chcesz zamieścić wyszukiwarkę w header'ze.
Nie lepiej skopiować kod modułu do div'a ?

*

Offline borton

  • Nowy
  • *
  • 5
  • 0
Odp: nowy haczyk {HOOK} Pomocy
« Odpowiedź #3 dnia: Październik 27, 2011, 03:53:44 am »
nie dokladnie o to mi chodzi, ale podobnie. Probowałem wkleić kod do DIV'a ale wywala mi błąd, że nie wyświetla strony, chyba dlatego, ze w skrypcie js sa nawiasy {} i to sie chyba gryzie z haczykami.

Sprawa jest juz rozwiązana, bo znalazlem modul slidera Nivo do presty, a chcialem wlasnie zamontowa takiego slidera na sztywno, nie wiezac o tym, ze jest gotowy moduł.

NATOMIAST POJAWIŁ SIĘ NOWY PROBLEM.

Zamontowałem moduł slidera, podhaczylem go do HOOK i smiga, tylko, że rozwala mi przyokazji warstwy na stronie, bo w innym div'ie mam menu, które powinno być na wierzchu.
Gdyby ktos znalazł błąd prosze o sugestie.

adres strony: presta2.eu4.pl

kod header.tpl:
...
   <div id="menu_slider"> //haczyk dla Slidera Nivo
   {$HOOK_NOWE}
   </div>
   <div id="menu_g"> //div z paskiem, ktory powinien byc bez wzglednie na wierzchu non stop
   <ul>
   <li><a href="manufacturer.php">Producenci[/url]
   <li><a href="">link 1[/url]
   <li><a href="">link 1[/url]
   </ul>
   </div>
...

no i kod global.css:

...
#menu_slider {
background: transparent url('.../img/logo_02.jpg') no-repeat top left;
position:absolute; top:250px;
   list-style-type: none;
   float: left
   z-index: 2;
}

#menu_g {
background: transparent url('../img/belka.png') no-repeat top left;
position:relative; top: 220px;
margin-left: 70px;
width: 900px;
height: 100px;
z-index: 3;
}
...