Polskie wsparcie PrestaShop
PrestaShop => Moduły => Wątek zaczęty przez: pavoo w Lipiec 09, 2012, 08:31:35 pm
-
Witam
prośba o pomoc gdyż już wysiadam. Mam prawie skończony moduł do presty ale nie mogę sobie poradzić z dodaniem css jak i js do sekcji head. PROSZĘ niech ktoś mi łopatologicznie wyjaśni jak dodać sekcję do head z poziomu modułu.
Pozdrawiam
Paweł
-
w pliku .php modulu ustal sekscje:
public function hookHeader()
{
}
i w niej umiec pliki do css i js
-
a mogę prosić o coś więcej. Już tego próbowałem korzystałem z google :P i kończy to się tak
[Mon Jul 09 21:23:54 2012] [error] [client ] PHP Parse error: syntax error, unexpected '}' in /home/.../modules/bl.... on line 49
[Mon Jul 09 21:24:36 2012] [error] [client ] PHP Parse error: syntax error, unexpected T_PUBLIC in /home/.../public_html/modules......blo....php on line 47
-
A zerknij kolego do innego modulu albo dwoch, tam masz jak na talerzu, nic tylko skopiowac, pozostanie ci tylko zmienic nazwy plikow
public function hookHeader()
{
Tools::addCSS(($this->_path).'name.css', 'all');
Tools::addJS(($this->_path).'name.js');
}
-
Dzięki ale tego też próbowałem może mam jakąś chorą Prestę wersja 1.4.4.1. Wklejam to w pliku .php na dole bądź zaraz po instalacji i nic. Nie ma żadnego błędu ale jak wchodzę w kod strony i sprawdzam to tam nic nie ma z tego wpisu. Zaznaczam iż mam włączoną kompilację. Analizowałem inne moduły i próbowałem dodanie takich wpisów. Może coś gdzieś po prostu przeoczyłem dosłownie jakiś czeski błąd. Z pliku tpl dane są na stronie brakuje mi tylko z pliku php, Instalacja przebiega prawidłowo, moduł włącza się bez przeszkód a dodanie wpisu do HEAD nie idzie.
-
a jak ma się dodać do head?
zadeklarowałeś w funkcji install automatyczną "instalację?"
albo czy ręcznie powiesiłeś moduł na odpowiednim hooku?
zapewne nie i ograniczyłeś się tylko do przekopiowania tego co napisał @mario ;D ;D ;D ;D
-
w metodzie install musisz jeszcze dodac:
$this->registerHook('header')
czyli poinformowac silnik, ze ty masz cos do wykonania w swoim module gdy bedzie uruchamiac lancuch hook Header
analogia do rejestru Windows
oj oj @pavoo
przeciez masz wszystko podane na talerzu, przejrzyj kilka modulow i zobacz o co kaman
-
To ja już wysiadam.
Zgodnie z logiką a raczej brakiem pomysłu wywaliłem wszystko i powinno działać a nie działa a jest tylko:
public function install()
{
return (parent::install() AND $this->registerHook('header'));
return true;
}
public function hookHeader($params)
{
Tools::addCSS(($this->_path).'block.css', 'all');
}
I gdzie tu jest byk? Patrzałem na inne moduły i wszystko wygląda identycznie.
-
a gdzie zawartosc __construct()
function __construct()
{
$this->name = 'nazwa_twojego_modulu';
$this->version = '1.0';
$this->author = '@pavoo';
$this->need_instance = 0;
parent::__construct();
$this->displayName = 'Nazwa Twojego Modulu';
}
kazdy modul musi zawierac min.:
__construct(), install(), uninstall()
jak masz w katalogu modułu config.xml to go usun
prestashop sam go sobie utworzy
coz, nauka czasami jest bolesna
jakbys wzial manual w reke to mialbys juz dawno zrobione
czasami nauka wchodzi przez tylek jak nie ma innej drogi, bez obrazy ;)
-
Dziękuje wszystkim za pomoc. Problem został rozwiązany poprzez usunięcie config.xml oraz odinstalowanie skryptu zainstalowanie i wyczyszczenie.