Jump to content

[Résolu] Personnaliser affichage produits pour une catégorie


Recommended Posts

Bonjour,

Afin de faciliter l'affichage d'une catégorie "consommables" j'ai modifié le global.css et le product-list.tpl pour afficher les produits sur plusieurs colonnes et plusieurs lignes. Jusque la pas de problème.

Maintenant, je souhaiterais pouvoir paramétrer l'affichage pour que cette mise en page soit appliquée à cette catégorie uniquement par son id. Donc deux solutions :

1 - je récupère le champ id category dans le product-list.tpl et je faits un {if ...
2 - je configure un fichier (?) pour que cette catégorie prenne un product-list2.tpl par exemple

Pour le 1 ça fait une heure que je galère sans résultat, mais bon est-ce que l'id peut être récupéré ?
Pour le 2, ce serait dans quel fichier ?
Si vous voyez une autre solution, n'hésitez pas.

Merci de votre aide.

Link to comment
Share on other sites

Après avoir farfouillé un peu partout, j'ai finalement trouvé, je vous donne donc une solution s'il y en d'autres qui veulent faire de même :

1. dupliquer le product-list.tpl en créant par exemple product-list-perso.tpl
2. dans product-list-perso.tpl, remplacer

></pre>
<ul>



par :

></pre>
<ul>



3. Créer la class product_list_perso dans global.css et mettre les paramètres d'affichage voulus

4. Dans category.tpl, remplacer (en fin du fichier) :

    {if $products}
           {include file=$tpl_dir./product-sort.tpl}
           {include file=$tpl_dir./product-list.tpl products=$products}
           {include file=$tpl_dir./pagination.tpl}
       {elseif !isset($subcategories)}

{l s='There is no product in this category.'}
   {/if}



par :

    {if $products}
           {include file=$tpl_dir./product-sort.tpl}
       {if $category->id != 6}
           {include file=$tpl_dir./product-list.tpl products=$products}
       {else}
           {include file=$tpl_dir./product-list-perso.tpl products=$products}
       {/if}
           {include file=$tpl_dir./pagination.tpl}
       {elseif !isset($subcategories)}

{l s='There is no product in this category.'}
   {/if}



si l'id de votre catégorie pour personnaliser l'affichage est 6.

5. Ajouter les traductions correspondantes dans le BO

Je ne sais pas si c'est la meilleure solution, mais elle fonctionne.

Link to comment
Share on other sites

En fait ce serait d'avoir les promotions de chaque catégories en premier, devant le reste des produits et avec un design différent des autres produits ...
Hummm.... je sais pas si c'est bien clair. C'est simple mais je galère pour l'expliquer ... :/

C'est comme çà :

http://img94.imageshack.us/img94/2083/cat61.jpg
ou
http://img111.imageshack.us/img111/6971/colonnes.jpg

Les promos en premiers (ici sur 2 colonnes) puis le reste des produits (ici sur 3 colonnes) ...

Link to comment
Share on other sites

  • 4 weeks later...

Bonjour @ tous. Comme j'ai déjà dis sur le forum, c'est dommage d'avoir à chaque fois des modifications de fichier d'origine. Pour peu qu'une mise à jour sorte, ça risque de "foiré" tout le site par la suite.

Ayant un site de vente, je pense pas que chacun puisse se permettre de "tripatouiller" les fichiers. Aussi, serais-t-il possible d'avoir un MODULE à part entière pour personnaliser l'affichage des produits.

Merci.

Link to comment
Share on other sites

  • 3 weeks later...
  • 11 months later...
  • 2 weeks later...
  • 10 months later...

Après avoir farfouillé un peu partout, j'ai finalement trouvé, je vous donne donc une solution s'il y en d'autres qui veulent faire de même :

1. dupliquer le product-list.tpl en créant par exemple product-list-perso.tpl

2. dans product-list-perso.tpl, remplacer

 

par :

[code]


  •  
    3. Créer la class product_list_perso dans global.css et mettre les paramètres d'affichage voulus
    4. Dans category.tpl, remplacer (en fin du fichier) :
    [code] {if $products}
    {include file=$tpl_dir./product-sort.tpl}
    {include file=$tpl_dir./product-list.tpl products=$products}
    {include file=$tpl_dir./pagination.tpl}
    {elseif !isset($subcategories)}
     
    {l s='There is no product in this category.'}
     
    par :
    [code] {if $products}
    {include file=$tpl_dir./product-sort.tpl}
    {if $category->id != 6}
    {include file=$tpl_dir./product-list.tpl products=$products}
    {else}
    {include file=$tpl_dir./product-list-perso.tpl products=$products}
    {/if}
    {include file=$tpl_dir./pagination.tpl}
    {elseif !isset($subcategories)}
     
    {l s='There is no product in this category.'}
     
    si l'id de votre catégorie pour personnaliser l'affichage est 6.
    5. Ajouter les traductions correspondantes dans le BO
    Je ne sais pas si c'est la meilleure solution, mais elle fonctionne.

Bonjour et merci beaucoup, je cherchais depuis quelques heures!

MAIS point n°5, comment faire les traductions dans le BO pour nouveau fichier product-list-perso??

Merci d'avance

Link to comment
Share on other sites

  • 3 weeks later...

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