Jump to content

Cacher la colonne (div id=right-column) de droite pour page manufacturer-list


Recommended Posts

Bonjour à tous,

 

Je vous explique mon problème:

J'ai activé la colonne de droite (qui chez moi s'affiche à gauche mais là n'est pas le sujet du topic) pour les pages des marques pour y faire figurer mon module d'affinement de recherche.

Exemple :

https://fashionizy.com/1_absorba

Jusque là, ça va.

J'aimerais cependant cacher cette colonne pour la page manufacturer-list (la page qui affiche la liste des marques).

Ici :

https://fashionizy.com/marques

Le problème c'est que dans "Préférences > Thèmes > Paramètres Avancés" il n'y a que "Marques" dans la liste. Il n'y a pas "Marques-liste".

Donc, soit j'active la colonne de droite pour "Marques" et je l'ai sur mes pages de marques et ma page de liste des marques, soit je désactive "Marques" et je ne l'ai plus sur aucune des deux.

 

Je précise : Ce que je veux désactiver, c'est cette div id="#right_column", qui s'affiche donc vide sur ma page manufacturer-list. Je n'aurai ainsi que la div id="#center_column" (qui passera donc à col-md-12) et donc plus de colonne vide pour ma page où figure la liste des marques.

 

J'ai essayé de créer une variable sur la page manufacturer-list.tpl et ainsi interagir avec le header.tpl, mais je n'ai pas réussi (la variable marche, je peux l'afficher sur ma page - vous verrez un '5' - mais la ligne suivante (mis dans header.tpl) ne sert à rien:

{if isset($pagemar)} choubidou{else} chabada{/if}

J'ai mis cette ligne à côté des :

{if $hide_left_column} hide-right-column{else} show-right-column{/if} qui sont dans le header.tpl

Vous verrez qu'on a "chabada" à chaque fois... preuve que soit j'ai raté mon if, soit ça ne peut fonctionner comme ça.

Si ça avait fonctionné j'aurais pu faire un :

{if isset($pagemar)} hide-right-column{/if}

 

Je vous remercie infiniment par avance pour votre aide...

 

Roger

Link to comment
Share on other sites

Déjà, ça me parait très très louche que ta colonne de droite s'affiche a gauche.

A moins d'avoir vraiment remodelé en profondeur ton thème, la colonne de gauche voit le jour dans le code du header.tpl (avant la center colonne en fait), tandis que la colonne de droite voit le jour dans le footer.tpl, si tu dois faire apparaître un contenu avant un autre mais qu'il arrive structurellement après ça ne peut se faire qu'à l'aide de truc assez malsains comme des positions absolute et des float de la mort.

 

Normalement le réglage de la visibilité des colonnes est outre dans le BO mais surtout piloté par le header.tpl qui va en plus de masquer ou non la colonne, définir la taille de la colonne centrale pour qu'ensuite tout se passe bien

Link to comment
Share on other sites

Bonsoir Doekia,

 

Merci pour ta réponse rapide. Oui effectivement cette histoire de colonne gauche / droite est vraiment bizarre... j'essaierai de régler ça plus tard. Je n'ai pas d'histoire de css malsains normalement (je ne suis pas le seul à travailler sur le site donc je ne peux pas dire tout ce qui a été fait avant).

 

Concernant ce que tu dis : "surtout piloté par le header.tpl qui va en plus de masquer ou non la colonne, définir la taille de la colonne centrale pour qu'ensuite tout se passe bien" : C'est justement là que j'aimerais un coup de main.

J'ai cette ligne dans mon header :

<body{if isset($page_name)} id="{$page_name|escape:'html':'UTF-8'}"{/if} class="{if isset($page_name)}{$page_name|escape:'html':'UTF-8'}{/if}{if isset($body_classes) && $body_classes|@count} {implode value=$body_classes separator=' '}{/if}{if isset($pagemar)} choubidou{else} chabada{/if}{if $hide_left_column} hide-left-column{else} show-left-column{/if}{if $hide_right_column} hide-right-column{else} show-right-column{/if}{if isset($content_only) && $content_only} content_only{/if} lang_{$lang_iso}">

 

Est-ce que tu (ou quelqu'un d'autre ^^) aurais une idée de comment je pourrais faire un if pour dire:

"Si c'est la page manufacturer-list => hide-right-column"

C'est ce que j'ai essayé de tester avec cette partie de la ligne : 

{if isset($pagemar)} choubidou{else} chabada{/if}

Mais alors que ma variable $pagemar existe bien sur la page manufacturer-list (puisqu'elle renvoie ce que je lui ai attribué), elle ne sert à rien dans ce if puisque ça renvoi "chabada" sur la page manufacturer-list, alors que ça devrait renvoyer "choubidou".

 

Merci

Link to comment
Share on other sites

Si tu vas sur les réglages avancés du thème tu peux déjà mettre en place telle ou telle colonne pour telle ou telle page, sans rien changer à tes tpl.

Mais gauche et droite inversé, désolé d'insister mais c'est hyper pas normal - et explique peut-etre en partie pourquoi ça ne marche pas au travers du réglage

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...