Polskie wsparcie PrestaShop

PrestaShop => Moduły => Wątek zaczęty przez: pavoo w Lipiec 09, 2012, 08:31:35 pm

Tytuł: moduł head
Wiadomość wysłana 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ł
Tytuł: Odp: moduł head
Wiadomość wysłana przez: design4VIP w Lipiec 09, 2012, 08:36:49 pm
w pliku .php modulu ustal sekscje:

public function hookHeader()
   {
       
          }

i w niej umiec pliki do css i js
Tytuł: Odp: moduł head
Wiadomość wysłana przez: pavoo w Lipiec 09, 2012, 09:27:46 pm
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
Tytuł: Odp: moduł head
Wiadomość wysłana przez: mario w Lipiec 09, 2012, 09:52:27 pm
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');
}
Tytuł: Odp: moduł head
Wiadomość wysłana przez: pavoo w Lipiec 10, 2012, 06:35:12 am
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.
Tytuł: Odp: moduł head
Wiadomość wysłana przez: sower w Lipiec 10, 2012, 08:35:35 am
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
Tytuł: Odp: moduł head
Wiadomość wysłana przez: mario w Lipiec 10, 2012, 10:11:54 am
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

Tytuł: Odp: moduł head
Wiadomość wysłana przez: pavoo w Lipiec 10, 2012, 03:30:06 pm
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.
Tytuł: Odp: moduł head
Wiadomość wysłana przez: mario w Lipiec 10, 2012, 05:46:31 pm
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 ;)
Tytuł: Odp: moduł head
Wiadomość wysłana przez: pavoo w Lipiec 10, 2012, 07:13:24 pm
Dziękuje wszystkim za pomoc. Problem został rozwiązany poprzez usunięcie config.xml oraz odinstalowanie skryptu zainstalowanie i wyczyszczenie.