Jump to content

Szablon a HOOK_RIGHT


Recommended Posts

Proszę o pomoc:

Otóż męczę się z konfiguracją presty/szablonu, aby uzyskać pożądany efekt. Chodzi o prawą kolumnę w szablonie na stronie http://r5studio-konto.hekko.pl/

Chciałbym by na stronie produktu, kategorii itp. była wyświetlana prawa kolumna i bloki w niej zawarte. 

Bloki są przypisane prawidłowo do Hook_right, wchodząc na strony CMS, np. http://r5studio-konto.hekko.pl/content/25-jak-korzystac-ze-sklepu w prawej kolumnie pojawiają się bloki, tak jak powinny. 

Ale wchodząc już w jakikolwiek produkt np. http://r5studio-konto.hekko.pl/thinkpad-w530/169-lenovo-thinkpad-w530-n1k4kpb-887619168709.html

prawy hook znika. Nie wiem dlaczego... szukam i szukam w kodzie... nie widzę, gdzie to może być ustawione. 

Wchodząc np. w blok producentów, który jest na szczycie prawego hooka, pojawia się: http://awesomescreenshot.com/09a22nio84

Brak wyjątków. Dziwne, ale nie mogę wybrać dwóch pierwszych opcji (moduł, dodaj do), są nieaktywne.

 

 

Share this post


Link to post
Share on other sites

Szablon był tworzony przez ciebie? Zobacz w pliku header.tpl czy nie masz warunku dla tej kolumny i podstrony product.

Możliwe, jest też, że w kontrolerze Order został umieszczany taki ciąg: 

$this->display_column_right = false;

co spowoduje, że kolumna się nie wyświetli.

Edited by presta4you.com (see edit history)

Share this post


Link to post
Share on other sites

Szablon jest kupiony.

No właśnie na tyle co znam tajemne kody php i css, wszystko jest włączone. Wszystkie polecenia związane z hook right i left lub display left, right wyglądają tak samo. 

Jedyne miejsce, gdzie występuje różnica w kodzie dla tych dwóch kolumn to plik classes/controller/FrontController.php : 

'HOOK_LEFT_COLUMN' => ($this->display_column_left ? Hook::exec('displayLeftColumn') : ''),
'HOOK_RIGHT_COLUMN' => ($this->display_column_right ? Hook::exec('displayRightColumn', array('cart' => $this->context->cart)) : ''),

Niestety nie wiem za co odpowiada polecenie array... Czy to mogłoby być to? 

Szukałem też w JS, ale tam hook right czy column right nie występują...

 

Dopowiem tylko, że zmieniłem powyższy kod dla hook_right_column identyczny jak left column i nic to nie dało...

Edited by birchoff (see edit history)

Share this post


Link to post
Share on other sites

znalazłem połowiczne rozwiązanie, w pliku header.tpl znalazłem coś takiego: 

{if !empty($HOOK_LEFT_COLUMN)&& empty($HOOK_RIGHT_COLUMN)}
{assign var='LAYOUT_COLUMN_SPANS' value=array(3,9,0) scope='global'}
{elseif empty($HOOK_LEFT_COLUMN)&& !empty($HOOK_RIGHT_COLUMN)}
{assign var='LAYOUT_COLUMN_SPANS' value=array(0,9,3) scope='global'}
{elseif empty($HOOK_LEFT_COLUMN)&&empty($HOOK_RIGHT_COLUMN)}
{assign var='LAYOUT_COLUMN_SPANS' value=array(0,12,0) scope='global'}
{else}
{assign var='LAYOUT_COLUMN_SPANS' value=array(3,6,3) scope='global'}
{/if}

zamieniłem (3,9,0) na (3,6,3) i działa. 

 

VEKIA: który plik? W folderze controllers/front mam 41 plików... żaden z nich nie zawiera sformułowania "left" lub "right". W Folderze szablonu żaden plik nie zawiera sformułowania initContent()

Z powyższego kodu, z tego co rozumiem powinien wyłączać wyświetlanie lewej lub prawej kolumny w zależności, czy jakieś bloki są znajdują się w Hook left lub right. I działa to, tylko nie w przypadku produktu i np. kategorii. 

 

presta4you.com: w modułach nie ma wyjątków.

Share this post


Link to post
Share on other sites

nie no, działa. Tylko teraz trzeba blokować wyświetlanie bloków tradycyjnie - w zapleczu. 

Na moje, gdzieś w szablonie jest zaszyta funkcja, która powoduje, że prawy blok nie wyświetla się np. na karcie produkty czy w kategoriach. Niestety nie udało mi się tego znaleźć. 

Ale lepsze takie rozwiązanie, niż żadne :)

Share this post


Link to post
Share on other sites

 Share

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More