bastien211 Posted April 30, 2010 Share Posted April 30, 2010 Bonjour,je suis nouveau sur Prestashop mais pas dans le developpement ce que j'aurais voulu savoir c'est comment faire pour changer de fond suivant la catégorie dans laquelle on entre :exemple : je vend des chiens- l'accueil dans le header nous avons un caniche et la page est rose, et lorsque l'on va sur Jack Russel la page devient bleu avec un jack russelDans du développement PHP pur et dur j'aurais la solution mais avec prestashop tout ce complique pour moi .. Il faudrait une fonction qui nous indique la page sur laquelle on se situe puis que l'on puisse faire un fichier css.php à la place du css de base pour que lorsqu'on est sur cette page on puisse changer l'image de fond .. Si vous savez comment faire avec prestashop HELP ME ... car rien que modifier le css en css.php je lutte .. :s{if isset($css_files)} {foreach from=$css_files key=css_uri item=media} <link href="{$css_uri}" rel="stylesheet" type="text/css" media="{$media}" /> {/foreach}{/if}Comment je l'indique vu que c'est automatique ....Merci d'avance pour vos réponses,Bastien Link to comment Share on other sites More sharing options...
bastien211 Posted April 30, 2010 Author Share Posted April 30, 2010 Bonjour,je suis nouveau sur Prestashop mais pas dans le developpement ce que j'aurais voulu savoir c'est comment faire pour changer de fond suivant la catégorie dans laquelle on entre :exemple : je vend des chiens- l'accueil dans le header nous avons un caniche et la page est rose, et lorsque l'on va sur Jack Russel la page devient bleu avec un jack russelDans du développement PHP pur et dur j'aurais la solution mais avec prestashop tout ce complique pour moi .. Il faudrait une fonction qui nous indique la page sur laquelle on se situe puis que l'on puisse faire un fichier css.php à la place du css de base pour que lorsqu'on est sur cette page on puisse changer l'image de fond .. Si vous savez comment faire avec prestashop HELP ME ... car rien que modifier le css en css.php je lutte .. :s{if isset($css_files)} {foreach from=$css_files key=css_uri item=media} <link href="{$css_uri}" rel="stylesheet" type="text/css" media="{$media}" /> {/foreach}{/if}Comment je l'indique vu que c'est automatique ....Merci d'avance pour vos réponses,Bastien Link to comment Share on other sites More sharing options...
Gregory Roussac Posted April 30, 2010 Share Posted April 30, 2010 Bonjour,Perso je rajouterai plutot l'id de la catégorie sur une classe d'un conteneur et irait mettre le style dans global.css.Regarde la complexité graphique de certaines boutiques et tu verras que de ce coté là, il n'a pas besoin de reprendre le code. Un peu de smarty et de css et souvent le tour est joué.Dans header.tpl <body {if $page_name}id="{$page_name|escape:'htmlall':'UTF-8'}"{/if}{if $page_name == 'category'} class="macat_{$category->id}"{/if}> Cordialement Link to comment Share on other sites More sharing options...
Gregory Roussac Posted April 30, 2010 Share Posted April 30, 2010 Comme dirait Patric, il ne faut pas poster deux fois >>> flooding !Merci.Cordialement Link to comment Share on other sites More sharing options...
bastien211 Posted April 30, 2010 Author Share Posted April 30, 2010 C'est que je savais pas dans quel topic ça coller .. désolé je sais bien .. Link to comment Share on other sites More sharing options...
bastien211 Posted April 30, 2010 Author Share Posted April 30, 2010 Je viens de tester désolé, ça ne marche pas mais merci quand meme pour l'aide, si tu as d'autres idéees n'hésite pas .. Link to comment Share on other sites More sharing options...
Gregory Roussac Posted April 30, 2010 Share Posted April 30, 2010 BonjourSi désolé lol ça marche très bien ! Il suffit ensuite de styliser le body qui a telle classe.Mais bon comme tu voudras, c'etait pourtant ma meilleure idée de la journée je crois désolé et bon courage avec css.php ! lol =) Link to comment Share on other sites More sharing options...
bastien211 Posted April 30, 2010 Author Share Posted April 30, 2010 Je t'explique mieux tu n'as peut etre pas compris, le header.png de mon site correspond autant a mon header qu'au body ainsi qu'au Background générale c'est une grande image .. Quand j'ai mis ton code dans mon body ça a tout simplement fait disparaitre le site car il ne comprend pas .. n'oublie pas l'URL rewriting qui peut poser des soucis peut etre dans ton ID .. J'espère que c'est petit info t'aiderons à mieux comprendre mon souci sachant que si tu prends une catégorie tu as par exemple id=5 mais cette catégorie contient des sous-catégories qui doivent elles aussi avoir le meme fond ( changé ) mais celle-ci ont un autre ID .. Link to comment Share on other sites More sharing options...
Gregory Roussac Posted April 30, 2010 Share Posted April 30, 2010 Je t'explique mieux tu n'as peut etre pas compris, le header.png de mon site correspond autant a mon header qu'au body ainsi qu'au Background générale c'est une grande image .. Oui oui c'est bien styliser la balise body dans header.tpl Quand j'ai mis ton code dans mon body ça a tout simplement fait disparaitre le site car il ne comprend pas .. n'oublie pas l'URL rewriting qui peut poser des soucis peut etre dans ton ID .. Testé avec ou sans url rewriting, smarty a bien cette variable. J'espère que c'est petit info t'aiderons à mieux comprendre mon souci sachant que si tu prends une catégorie tu as par exemple id=5 mais cette catégorie contient des sous-catégories qui doivent elles aussi avoir le meme fond ( changé ) mais celle-ci ont un autre ID .. Dans c'est cas là il faut conditionner sur le $category->level_depth qui t'interesse et le cas écheant prendre $category->id_parent au lieu de $category->id. Quand bien même tu pourrais aussi ajouter une classe dans la css par id, tu retomberais sur le meme problème de toute façon avec la modification en php. body.macat_21, body.macat_22, body.macat_23 { background-image: url(..); } Cordialement Link to comment Share on other sites More sharing options...
bastien211 Posted April 30, 2010 Author Share Posted April 30, 2010 Bah c'est surtout que j'ai pas l'habitude de développer des sites avec des systèmes template genre smarty et autre .. Donc Prestashop, Magento, Joomla tout ça est un peu nouveau et je ne connais pas du tout les fonctions pour pouvoir discuter avec mon ami serveur pour lui envoyer mes requètes. Je n'ai pas eu le choix pour ce projet hélas mais j'avoue que je préfère tout développer moi même je suis pas du tout restreint..Merci de ton aide en tout cas, donc si j'ai bien compris j'ai simplement à ajouter :dans le body : {if $page_name}id="{$page_name|escape:'htmlall':'UTF-8'}"{/if}{if $page_name == 'category.php?id_category=3'} class="macat_{$category->id}"{/if}et créer une classe dans le CSS : cat_3 ( par exemple) avec dedans exactement le meme code que le body :.cat_3{ background-image: url('../img/header2.jpg'); //au lieu de background-image: url('../img/header.jpg'); background-position: center top; background-repeat: repeat-x; z-index: 1; border: none; position:relative; font-size: 11px; font-family: Verdana, Arial, Helvetica, Sans-Serif; color: #58464e; text-align:center; margin:auto; padding:auto;} Link to comment Share on other sites More sharing options...
Gregory Roussac Posted April 30, 2010 Share Posted April 30, 2010 Re bonjourNe remplace pas 'category' et pas besoin de reprendre tout le css de body, juste l'image suffit. Smarty est ton ami crois moi =) <body {if $page_name}id="{$page_name|escape:'htmlall':'UTF-8'}"{/if}{if $page_name == 'category'} class="macat_{$category->id}"{/if}> body { background-image: url(’../img/header.jpg’); background-position: center top; background-repeat: repeat-x; z-index: 1; border: none; position:relative; font-size: 11px; font-family: Verdana, Arial, Helvetica, Sans-Serif; color: #58464e; text-align:center; margin: 0px auto; } body.macat_3 { background-image: url(’../img/header2.jpg’); } Bon courage. Cordialement, Link to comment Share on other sites More sharing options...
Atch Posted April 30, 2010 Share Posted April 30, 2010 Sujet déplacé pas à sa place...Pour ton histoire de couleurs, tu peux passer par des class dans le css qui changes en fonction de l'ID de la catégorie...Pas besoin de PHP pour cela, Juste récupérer la varible smarty qui correspond à l'id de ta catégorie dans le Header...Tu auras ensuite des class du style : et ensuite dans ton cssdiv.catheader_3 { background-color: #ff0000} 3 correspondant à l'id de la catégorie jack Russel etc...V++Atch Link to comment Share on other sites More sharing options...
Gregory Roussac Posted April 30, 2010 Share Posted April 30, 2010 http://www.prestashop.com/forums/viewreply/233954/ qu'il faudrait aussi re placer en intégration. Merci Atch. Link to comment Share on other sites More sharing options...
bastien211 Posted April 30, 2010 Author Share Posted April 30, 2010 Alors je pense qu'on s'approche du but, mais je vois dans firebug il marque class="macat_" mais il n'ajoute pas l'id de la catégorie .. c'est tete pour ça que je te disais que ça marché pas :s .. j'ai essayé : - {if $page_name == 'category'} class="macat_{$category->id}"{/if} - {if $page_name == 'category'} class="macat_{$category->id_category} "{/if}mais ça ne récupère pas l'ID toujours "macat_" Link to comment Share on other sites More sharing options...
Atch Posted April 30, 2010 Share Posted April 30, 2010 http://www.prestashop.com/forums/viewreply/233954/ qu'il faudrait aussi replacé en intégration. Merci Atch. Arf j' l'avais pas vu celui là!!! Clair ça fait doublon...Je regroupe tout sur le meme sujet et merci d'éviter les doublons la prochaine fois c'est "poubelle" ...Merci Gregory V++Atch Link to comment Share on other sites More sharing options...
bastien211 Posted April 30, 2010 Author Share Posted April 30, 2010 Alors je pense qu’on s’approche du but, mais je vois dans firebug il marque class=“macat_” mais il n’ajoute pas l’id de la catégorie .. c’est tete pour ça que je te disais que ça marché pas :s .. j’ai essayé :– {if $page_name 'category'} class="macat_{$category->id}"{/if} - {if $page_name ‘category’} class=“macat_{$category->id_category} “{/if} mais ça ne récupère pas l’ID toujours “macat_” Link to comment Share on other sites More sharing options...
Atch Posted April 30, 2010 Share Posted April 30, 2010 Alors je pense qu’on s’approche du but, mais je vois dans firebug il marque class=“macat_” mais il n’ajoute pas l’id de la catégorie .. c’est tete pour ça que je te disais que ça marché pas :s .. j’ai essayé :– {if $page_name 'category'} class="macat_{$category->id}"{/if} - {if $page_name ‘category’} class=“macat_{$category->id_category} “{/if} mais ça ne récupère pas l’ID toujours “macat_” Essaye plutot cela : {if $page_name 'category'} class="macat_{$currentCategoryId}"{/if} V++Atch Link to comment Share on other sites More sharing options...
bastien211 Posted April 30, 2010 Author Share Posted April 30, 2010 Merci Super ça marche !!!! Link to comment Share on other sites More sharing options...
fherrard Posted September 20, 2010 Share Posted September 20, 2010 bnjour j'ai le même probleme il ne recupere pas l'id de la categorie j'ai essayé les different body mais tjrs pas d'id de categorie d'ou peu veniir ce pb car ca fonctionne en 1.2.5 et là en 1.3.1 ca marche pas Link to comment Share on other sites More sharing options...
fherrard Posted September 21, 2010 Share Posted September 21, 2010 ok compris d'ou vien le pb il faut que le module categorie soit en fonction pour recup l' id Link to comment Share on other sites More sharing options...
jon21 Posted April 28, 2011 Share Posted April 28, 2011 BonjourCe sujet m'interesse car j'ai besoin de faire plus ou moins la meme chose mais avec le footer. Ca fonctionne parfaitement pour le header mais, en essayant de reprendre le principe, ca ne marche pas pour le footer.J'ai fait ainsi : dans le footer.tpl, dans la div id="footer" j'ai rajouté : {if $page_name == 'category'} class="macatfoot_{$currentCategoryId}"{/if}et dans le global.css, j'ai rajouté .macatfoot_4 { background: url(../images/footer-bg2.gif) 0 0;}QQun aurait il une idée? Merci beaucoup Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now