Jump to content

Affichage liste produits différent selon categorie


Recommended Posts

Bonjour,

 

Existerait il un module pour avoir un affichage des produits d'une catégorie en liste, de type tableur :

 

[reference] [nom produit] [prix] [bouton ajout au panier]

 

Un peu comme la pièce jointe, et sans image...

 

Et faire en sorte que ce type d'affichage ne concerne que certaines categories. 

 

Si ce module n'existe pas, je pense que je dois modifier le product_list.tpl...

 

Auriez vous des idées pour faire cette modif?

 

Cordialement.

 

Sylvain

 

 

post-1357519-0-40146400-1484071173_thumb.png

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

Bon... Mois qui vient du monde du développement du CMS, j'avoue que PS me laisse un peu perplexe par sa structure... Un peu bizarre de devoir modifier X fichier pour générer un affichage basique HTML... Bref....
 
Je précise mon problème.
 
En finalité, je souhaite avoir un template de liste de produits différente, selon les catégories. 
 
J'ai besoin de deux affichages différents... Un qui est l'affichage existant, donc le product_list.tpl original.
 
Et un que je souhaite voir apparaître différemment pour certaines categories.
 

 

Première étape : les conditions d’affichage.
 
Je ne me suis pas embêté pour mes tests... Je modifie le fichier category.tpl dans lequel je mets ceci :

<!--choix template selon cataegorie-->
              {if $category->description|strstr:"[prod1]"} 
        {include file="./product-list-1.tpl" products=$products}
    
{else}
    
    {include file="./product-list.tpl" products=$products}
    {$category->description|replace:'[prod1]':''}   
  
{/if}   

Le principe : j'affecte une convention de nommage dans ma catégorie concernée par le changement de template ( ce qui est super facile lors de l'import d'un fichier CSV de produits).

Dans la description de la catégorie, je rajoute une variable de type [prod1]

Lorsque je balaye les descriptions des catégories, si je trouve la variable [prod1] dans la description, j'affecte alors le fichier pour cette catégorie "product_list_1.tpl.

Si il n'y pas cette variable, j'affiche le product_list.tpl par défaut.

 

 

J'ai ensuite créé mon second fichier product_list_1.tpl

 

 

Mes soucis : 

 

D'abord, cela fonctionne peu ou prou. Pour ma catégorie concernée, j'ai bien l'affichage du fichier spécifique "product_template_1.tpl". 

 

Par contre, je continue en dessous, ou au dessus, selon où je mets mon bout de code dans le fichier categorie.tpl, à avoir l'affichage de mes produits selon le product_list.tpl par défaut.

 

Autrement dit, j'ai fait le test avec une catégorie où j'ai mis deux produits. 

 

Avec ma manip, j'ai mes deux produits qui s'affichent selon template modifié (product_list_1.tpl)

 

Mais en dessous, j'ai de nouveau mes deux produits, cette fois ci avec l'affichage par défaut (product_list_.tpl)

 

 

J'ai commenté dans le category.tpl la ligne : {include file="./product-list.tpl" products=$products}

 

Mais cela ne change pas.

 

Je me dis donc que l'appel au product_list original se fait également par ailleurs... Et c'est là que je m'y perds... Car en gros, si je comprends tout, la génération du template se fait entre les fichiers tpl, les fichiers js, les hook,  les CSS... 

 

Par exemple, sur mon product_list_1.tpl modifié, je ne souhaite plus que l'image du produit apparaisse... 

 

Si je modifie le fichier en question, c'est le gros souc sur le template qui s'y perd dans le placement des informations...

 

Donc, mes questions : 

 

1) Quels fichiers je dois modifier pour ajouter, supprimer ou modifier un élément du bloc produit dans la liste produit. Par exemple, je veux supprimer l'image du produit, je veux réduire la hauteur de ligne du produit, supprimer le lien de comparaison, ou le lien détails, etc...

 

2) Avez-vous une idée du pourquoi malgré ma modif décrite plus haut, mes produits s'affichent deux fois, avec les deux fichiers produtcs_list sur la même page?

 

 

Vous me seriez d'un grand secours sur un souci qui me paraissait tellement simple à la base :)

 

Cordialement.

 

Sylvain

 

 

 

 

 

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...