wdrożenia PrestaShop

Nowy hook w PrestaShop 1.4.1.0

  • 11 Odpowiedzi
  • 8859 Wyświetleń

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

*

Offline pierzo

  • Nowy
  • *
  • 6
  • 0
Nowy hook w PrestaShop 1.4.1.0
« dnia: Maj 07, 2011, 03:14:04 pm »
Witam
Mam prośbę czy ktoś mógłby krok po kroku napisać jak dodać nowy hook w Presta 1.4.1.0?
Tak domyślnie dla "nowyhook" ze ścieżkami dostępu do plików, które należ modyfikować.

Próbowałem już sposobów:

http://landofcoder.com/download/guides-docs/docs-guide-prestashop/128-how-to-add-new-hook-in-prestashop-14.html

i

http://www.prestashop.com/forums/viewthread/90040/P0/integration/solved_how_to_add_new_hook_in_prestashop_1_dot_4

Oczywiście nie działa.

Jestem już skrajnie wyczerpany nerwowo z tego powodu. Robie jak piszą inni użytkownicy presty,  nie mam żadnych literówek, odświeżam serwer (pracuje lokanie na Xampp 1.7.4) czyszczę cache przeglądarki FF4, logout/login tak dla pewności i nadal nic.

Koniecznie muszę zrobić swoją skórkę i możliwość utworzenia własnego hook'a jest mi niezbędna.
Z góry dzięki, pozdro


*

Offline deviant

  • Mieszkaniec
  • *****
  • 776
  • 1
  • Płeć: Mężczyzna
  • prestamod
  • PrestaShop: PS
  • Status: forum
Prestamod -> [sklepy][hosting][modyfikacje][szablony][pomoc]

*

Offline pierzo

  • Nowy
  • *
  • 6
  • 0
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #2 dnia: Maj 07, 2011, 04:13:53 pm »
http://ardianys.com/64_how-to-add-new-hook-prestashop-engine-modification-tutorial-series.html

Tak to też na początku przerabiałem, autor tamtego tutka nie napisał tego na początku ale jego porady dotyczą starszej wersji Presty. Tak więc ten link odpada całkowicie.

*

Offline deviant

  • Mieszkaniec
  • *****
  • 776
  • 1
  • Płeć: Mężczyzna
  • prestamod
  • PrestaShop: PS
  • Status: forum
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #3 dnia: Maj 07, 2011, 07:40:33 pm »
Musze poszukać bo gdzieś to znalazłem kiedys ale link mi umknął.

Zerknij tutaj http://www.ecartservice.net/07022011/tired-of-hooks-try-a-plugin-prestashop-1-4/
Prestamod -> [sklepy][hosting][modyfikacje][szablony][pomoc]

*

Offline pierzo

  • Nowy
  • *
  • 6
  • 0
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #4 dnia: Maj 07, 2011, 08:52:05 pm »
Musze poszukać bo gdzieś to znalazłem kiedys ale link mi umknął.

Zerknij tutaj http://www.ecartservice.net/07022011/tired-of-hooks-try-a-plugin-prestashop-1-4/

 :) już zerkałem, szkoda że ten plugin działa za smarty 2, wolałbym pozostać przy 3.
Dziwię się że tak trudno dokopać się do tych informacji (działających informacji).
Modyfikacja layoutu to podstawa i to powinno być uproszczone.
Dzięki że się starasz mi pomóc.

*

Offline deviant

  • Mieszkaniec
  • *****
  • 776
  • 1
  • Płeć: Mężczyzna
  • prestamod
  • PrestaShop: PS
  • Status: forum
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #5 dnia: Maj 07, 2011, 08:54:52 pm »
Z tego co pamiętam to trzeb dać w katalogu override plik FrontControler.php, w bazie dodać nowy hook, w kodzie strony też go wrzucić tam gdzie ma być... nawet mi się to udało. Jeszcze poszukam.
Prestamod -> [sklepy][hosting][modyfikacje][szablony][pomoc]

*

Offline pierzo

  • Nowy
  • *
  • 6
  • 0
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #6 dnia: Maj 08, 2011, 12:21:49 pm »
Napiszę wam jak to w tej chwili wygląda u mnie dla "nowyHook"

1. Najpierw zapisuję nowyhook w pliku FrontController.php.
Tworzę nowy plik w katalogu override\classes\FrontController.php z zawartością:

<?php
class FrontController extends FrontControllerCore
{
  function 
displayHeader(){
        
            
parent::displayHeader();
            
$this->smarty->assign(array('HOOK_NOWY_HOOK' => Module::hookExec('nowyHook')));
            }

?>

2. Dodaję nowy hook w bazie danych, przez zapytanie w phpmyadmin

INSERT INTO `moja_baza`.`ps_hook` (
`id_hook` ,
`name` ,
`title` ,
`description` ,
`position`
)
VALUES (
NULL , 'nowyHook', 'Nowy Hook, ', NULL , '1'
);

3. Tworzę nową funkcję o nazwie nowyHook w pliku modules/nowyhook/nowyhook.php
‘hook’ to prefix funkcji hook

<?php
function hooklnowyHook($params){
return 
$this->processHook$params,"nowyHook");
}
?>


4. Dodajemy kod {$HOOK_NOWY_HOOK} w pliku theme/prestashop/header.tpl
<!-- Header -->
<div id="header">
<a id="header_logo" href="/{$base_dir}" title="{$shop_name|escape:'htmlall':'UTF-8'}">
<img class="logo" src="/{$img_ps_dir}logo.jpg?{$time}" alt="{$shop_name|escape:'htmlall':'UTF-8'}" {if $logo_image_width}width="{$logo_image_width}"{/if} {if $logo_image_height}height="{$logo_image_height}" {/if} />
</a>
<div id="header_right">
{$HOOK_TOP}
</div>
<div id="nowyhook">
{$HOOK_NOWY_HOOK}  <--- tutaj
</div>
</div>

Jak ktoś może to niech mnie poprawi/uzupełni, napisze co trzeba zmienić/dodać w których plikach.

*

Offline deviant

  • Mieszkaniec
  • *****
  • 776
  • 1
  • Płeć: Mężczyzna
  • prestamod
  • PrestaShop: PS
  • Status: forum
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #7 dnia: Maj 08, 2011, 03:44:51 pm »
3. Tworzę nową funkcję o nazwie nowyHook w pliku modules/nowyhook/nowyhook.php
‘hook’ to prefix funkcji hook

Kod:

<?php
function hooklnowyHook($params){
return 
$this->processHook$params,"nowyHook");
}
?>

A czasem nie dodajesz tylko nowy hook to juz istniejacych modulow w celu przerzucenia ich wlasnie do tego nowego zaczepu ?
Prestamod -> [sklepy][hosting][modyfikacje][szablony][pomoc]

*

Offline pierzo

  • Nowy
  • *
  • 6
  • 0
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #8 dnia: Maj 08, 2011, 05:29:10 pm »
3. Tworzę nową funkcję o nazwie nowyHook w pliku modules/nowyhook/nowyhook.php
‘hook’ to prefix funkcji hook

Kod:

<?php
function hooklnowyHook($params){
return 
$this->processHook$params,"nowyHook");
}
?>

A czasem nie dodajesz tylko nowy hook to juz istniejacych modulow w celu przerzucenia ich wlasnie do tego nowego zaczepu ?

ja to spisałem z innego tutka, jak możesz mi wyjaśnić kwestię o której piszesz na jakimś przykładzie to byłbym wdzięczny. Napiszmy wszytko tak jak ma być i to przyklejmy dla potomności.

*

Offline deviant

  • Mieszkaniec
  • *****
  • 776
  • 1
  • Płeć: Mężczyzna
  • prestamod
  • PrestaShop: PS
  • Status: forum
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #9 dnia: Maj 08, 2011, 06:33:39 pm »
Jeżeli chcesz przerzucić (dla przykładu) blok newslettera, to w jego pliku .php musisz dodać właśnie tą funkcję pozwalającą na zainstalowanie/przeszczepienie modułu do tego nowego zaczepu.
Prestamod -> [sklepy][hosting][modyfikacje][szablony][pomoc]

*

Offline pierzo

  • Nowy
  • *
  • 6
  • 0
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #10 dnia: Maj 08, 2011, 06:54:29 pm »
Coś czuje że nam się wątek rozrośnie. Ja to rozumuje tak: Chcę mieć w templatce diva w dowolnym miejscu "instalje/tworzę" w nim nowego hook'a żeby mieć możliwość przenoszenia konkretnych modułów do niego. Teraz  się okazuje, że jak mam już zainstal hook to musze grzebać w pliku konkretnego modułu żeby mu zezwolić przeniesienie?
Trzeba tworzyć moduł nowego hooka czy nie? Też mi się wydawało że poprostu mam dać znać preście, że tworzę nowe miejsce a nie nowy moduł. Ktoś jednak napisał  w jakimś tutku, że trzeba tworzyć moduł.

Zajmuje się grafiką na codzień, w kodzie grzebię z konieczności więc jak możesz to pisz konkretnie o jakie funkcje chodzi w jakich plikach proszę.

*

Offline e-maginacje

  • Nowy
  • *
  • 3
  • 0
Odp: Nowy hook w PrestaShop 1.4.1.0
« Odpowiedź #11 dnia: Lipiec 08, 2011, 02:54:11 pm »
Również próbuję dodać nowego Hook'a i mi nie działa. Mam prestę 1.4.2.5 PL.
W katalogu override/classes mam plik __FrontController.php
Gdy dodam tam plik FrontController.php (bez podkreślnika na początku) to mój sklep przestaje działać - nie wyświetla się nic.

Proszę, pomóżcie...