Jump to content

Un singur site variante colorstice diferite in functie de categorie


boy2litle

Recommended Posts

Salve,

 

Am un site in care as vrea sa incerc sa folosc aceeasi tema insa in varianta colostice diferite in functie de categoria de produse in care se afla utilizatorul. Tinand cont ca fiecare varianta coloristica in parte va avea propriile ei imagini (butoane, menu-uri, logo-uri etc) si fisiere css, cum as putea facea asta?

 

Multumesc!

Link to comment
Share on other sites

cel mai simplu e din css, dar ai nevoie de un override pe frontcontroller pentru o variabila care sa stocheze o clasa unica pentru fiecare categorie, clasa care se ataseaza la body si de acolo mai departe ai carlig css pentru fiecare pagina individuala din site.

 

Am aruncat acum un ochi, trebuie sa faci override pe init() din frontcontroller, acolo este alocata valoarea variabilei $page_name care determina id-ul tagului body.

Edited by urecheatu007 (see edit history)
  • Like 1
Link to comment
Share on other sites

cel mai simplu e din css, dar ai nevoie de un override pe frontcontroller pentru o variabila care sa stocheze o clasa unica pentru fiecare categorie, clasa care se ataseaza la body si de acolo mai departe ai carlig css pentru fiecare pagina individuala din site. Am aruncat acum un ochi, trebuie sa faci override pe init() din frontcontroller, acolo este alocata valoarea variabilei $page_name care determina id-ul tagului body.

 

Crezi ca ai putea sa imi exemplifici?

Multumesc!

Link to comment
Share on other sites

adauga in header.tpl la tagul body

{if ($page_name eq 'category') && isset($smarty.get.id_category)}class="categ_{$smarty.get.id_category}"{/if}

 

de acum poti sa faci orice din css

body.categ_3 column_left { background-color: red}

 

va face ca pentru categoria 3 sa ai coloana din stanga pe fundal rosu

Link to comment
Share on other sites

  • 1 year later...

salutare, as dori sa fac si eu acceasi treaba pentru topmeniu, adik fiecare categorie sa aiba in background cate o culoare pe care o setez eu.cine ma poate ajuta ?

Hmm, singura cale care imi vine in cap este modificarea modulului/template-ului sau ca sa puna id-ul categoriei ca id pentru li-urile categoriilor care sunt afisate. Exact unde sa modifici depinde de versiunea prestashop/modul.

Din ce vad eu in modul, trebuie editata functia

private function getCategory($id_category, $id_lang = false, $id_shop = false)

si in functia asta se modifica (la mine e pe la linia 644, fisierul e bineinteles /modules/blocktopmenu/blocktopmenu.php) linia de mai jos

            $this->_menu .= '<li '.$selected.'>';

in

            $this->_menu .= '<li id="cat'.(int)$id_category.'" '.$selected.'>';

Astfel fiecare link al unei categorii va avea id de forma "cat123" unde 123 este id-ul categoriei (il afli usor in admin).

Partea de colorat se face din tema din css cu selector de forma

#cat123 {
    background: bla bla bla;
}

cate unul pentru fiecare categorie pentru care se doreste colorarea diferita

sau

#cat123 li {}

pentru descendenti.

Edited by urecheatu007 (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

cred ca leinto87 doreste doar in bloc topmenu sa aibe fundaluri dif pt categorii

in acest caz folosesti nth-child:

adaugi in superfish-modified.css

 

 

.sf-menu li:nth-child(1) {background:red}
.sf-menu li:nth-child(2) {background:blue}
.sf-menu li:nth-child(3) {background:green}
.sf-menu li:nth-child(4) {background:yellow}
Link to comment
Share on other sites

×
×
  • Create New...