Jump to content

Affichage des textures dans la liste (résolu) et produits phares (résolu)


Recommended Posts

Bonjour à tous,

Je dispose de plusieurs déclinaisons pour des produits mais au lieu d'utiliser les couleurs de bases j'importe des petites photos en texture.

Cela fonctionne très bien sur la présentation du produit et je souhaiterais avec cela aussi dans la liste par catégories.

Je me suis inspiré de ce sujet :
http://www.prestashop.com/forums/viewthread/31103/graphisme/affichage_des_couleurs_lors_de_laffichage_de_la_liste_de_produits_dot_/

Et si cela fonctionne très bien en cas d'affichage des "couleurs" de base, il ne se passe rien avec les textures.

Je pense qu'il faut que je modifie mon category.php en conséquence pour envoyer les bonnes valeurs à smarty., je me suis inspiré du product.php mais je ne maitrise pas encore de trop smarty et je ne vois pas trop ce que je dois envoyer.

Si quelqu'un pouvait m'aider.

Merci d'avance

Link to comment
Share on other sites

J’ai finalement trouvé la solution par moi même pour la liste avec des modifs dans le category.php et le products-list.tpl, maintenant je cherche pour les produits phares, car quand je fais la même modif dans le module homefeatured je n’ai aucun résultat :(

Link to comment
Share on other sites

Oui je veux bien faire partager mes découvertes, car ce n'est pas les réponses du forum qui m'ont aidé :-S

Je pense que j'aurais du prendre un pseudo "féminin", apparemment cela permet d'avoir des réponses rapides :lol:

Alors tout d'abord pour ceux qui vont hurler au loup sur la modif faites, je vous rappelle que je suis débutant en prestashop et encore plus en smarty donc j'ai fait cela "à ma sauce" en essayant de comprendre comment cela pouvait bien fonctionner.

Le but : avoir les déclinaisons dans le listing des produits.
Mes besoins : des emballages à l'unité, par 6, par 9, par 12 etc...
Mon problème : la méthode (lien de mon premier post) permet de faire afficher les couleurs dans le listing mais dans mon cas ce ne sont pas des couleurs de base de prestashop mais des vignettes ajoutées sous forme de photos.

Je repars donc du lien mentionné plus haut et j'ajoute cela dans le category.php de l'arborescence (vers ligne 62) :

/* couleurs */
       foreach ($cat_products as $key => $cat_product) {
   $product = new Product(intval($cat_product['id_product']), true, intval($cookie->id_lang));
   $colors = array();
   $attributesGroups = $product->getAttributesGroups(intval($cookie->id_lang));
   if (Db::getInstance()->numRows())
   {
       foreach ($attributesGroups AS $k => $row)
       {
           /* Color management */
           if (isset($row['attribute_color']) AND $row['attribute_color'] AND $row['id_attribute_group'] == $product->id_color_default)
           {
               $colors[$row['id_attribute']]['value'] = $row['attribute_color'];
               $colors[$row['id_attribute']]['name']  = $row['attribute_name'];   
               $colors[$row['id_attribute']]['id_image']  =(($row['id_image'] != NULL) ? intval($row['id_image']) : -1); 




           }
       }
   }
   $cat_products[$key]['colors'] = $colors;


}



J'ai repéré que mes vignettes sont stockées dans le répertoire /img/co de mon site.
J'ai 6 vignettes de déclinaisons qui sont donc nommées du type 27.jpg 28.jpg etc...
Afin de récupérer cette info j'ai, lors de la création de mes déclinaisons, ajouté ce numéro en lieu et place de la "couleur", ca ne change pas le fonctionnement vu que j'utilise des vignettes moi.

Et dans le product-list.tpl de mon thème j'ai mis cela :

{if !empty($product.colors)}




Commandez par lot :


   {foreach from=$product.colors key=id_attribute item=color }


   {/foreach}

{/if} 



Donc le $color.value correspond bien au nom de ma vignette et du coup ca marche !

Je sais, je sais c'est pas propre mais il me fallait avoir dans l'urgence un truc opérationnel.

Par contre maintenant faudrait que je fasse la même chose avec les produits phares en modifant le homefeatured mais je coince...

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