Polskie wsparcie PrestaShop
		PrestaShop => Wygląd => Wątek zaczęty przez: kruger30 w Sierpień 24, 2016, 10:24:05 pm
		
			
			- 
				Witam serdecznie wszystkich.Jestem świeży jeżeli chodzi o presta. Porobiłem już parę kursów z obsługi podstawowej i jest to dla mnie w miarę czytelne.
 Mam zapytanie odnośnie modyfikacji szablonu na presta.
 Do tej pory nie miałem okazji tworzenia żadnego sklepu ale czas przyszedł na to. Tworzyłem szablony na drupal i wordpress.
 Korzystam z standardowego szablonu presta czyli default-bootstrap. Boostrap jest dla mnie jak najbardziej na tak ponieważ łatwo się go modyfikuję. Zbadałem już mniej więcej katalog szablonu  i wiem ze jest oparty na smarty.
 Moje pytanie jest :
 1 ) jak można dodać kolejny „miejsce” na umieszczanie w np. modułu cms lub np. listy kategorii.
 W wordpress były to widgety a na drupalu regiony i bloki.
 Czy na prestashop można w podobny sposób dodawać takie miejsca ?
 Mam np. stopke
 <div class=”row”>
 <div class=”col-12”>
 Chciałbym tutaj dodawać np blok z cms lub np liste kategorii
 </div>
 </div>
 
 Proszę o podpowiedź :)
 
- 
				Musisz zarejestrować hook w dowolnym module, który posiadasz linijka:
 public function install()
 {
 return
 parent::install()
 
 && $this->registerHook('mojzaczep');
 }
spowoduje dodanie do bazy danych hooka
 następnie w tpl wywołujesz tego hooka:
 {hook h = "mojzaczep"}no i oczywiście podpinasz dany moduł, który chcesz wyświetlić do tego zaczepienia.
 
 Natomiast Ty piszesz bardziej o widgetach jak w Wordpress, a ta funkcjonalność będzie dopiero w wersji 1.7.
 Jeśli zaś chcesz wstawić cokolwiek wystarczy, że dopiszesz funkcję w smarty - a klasy w PS masz gotowe wystarczy się do nich odwołać [katalog classes]
 
 
- 
				Przepraszam wyraziłem się źle. Tzn w wordpress tworzyłem miejca dla widgetów. Mogłem w szablonie utworzyć miejsce a następnie z panelu admina umieścić tam widget który np okazywał ostatnie post.
 
 W drupalu tworzyło się regiony a w tych regionach można było osadzać bloki które miały różne funkcjonalności.
 
 W presta chciałbym mieć podobną kontrole. Np mam
 
 <div class="row">
 <Div class="col-md-6"> cos </div>
 <Div class="col-md-6"> cos </div>
 </div>
 
 A chciałbym zamienić na
 
 <div class="row">
 <Div class="col-md-4"> cos </div>
 <Div class="col-md-4"> nowe miejsce dla modułow</div>
 <Div class="col-md-4"> cos </div>
 </div>
 
 Jak dobrze rozumiem to hooki umożliwiają pozycje dla modułów  ?
- 
				tak dokładnie  :)
			
- 
				Ok ostatnia rzecz:)
 Tzn mam np moduł.  blocktags  i plik blocktags.tpl.
 
 Dodaje w tym pliku ten kod ?
 public function install()
 {
 return
 parent::install()
 
 && $this->registerHook('mojzaczep');
 }
 A potem w tpl daje {hook h = "mojzaczep"} ?
 
- 
				Tak, tylko jeszcze w kontrolerze modułu musisz dopisać obsługę tego hooka "mojzaczep".
			
- 
				i podczas pisania wątków musisz stosować znaczniki "code" taki przycisk nad okienkiem pisania wiadomości #  
			
- 
				Wyczytałem na stronie prestyshop 
 - Tworzenie własnego hook'a
 Dodanie do bazy danych wpisu.
 INSERT INTO `ps_hook` (`name`, `title`, `description`) VALUES ('nameOfHook', 'The name of your hook', 'This is a custom hook!');
 
A jak mogę wywołać w tym hook'u  się np blockcart
 
 Na stronie presty jest kod
 {hook h='nameOfHook' mod='blockcart'}
 
 Czy w folderze modules/blockcart   w pliku php musze dodać cos jeszcze ? czy w folderze szablonu w folder themes/nazwa//modules/blockcart ?
 
 
- 
				tylko w pliku php  modułu 
 najłatwiej zarejestrować nowego hooka dodając go do instrukcji instalacyjnej modułu - skorzystaj z wyszukiwarki forum podawaliśmy dość szczegółową instrukcję