Cerise Posted September 3, 2011 Share Posted September 3, 2011 Bonsoir, J'ai trouvé un bout de code très sympathique (via devoox) qui affiche ainsi la déclinaison que vous désirez dans vos catégories. Exemple avec mon attribut "Taille", qui a lle numéro du groupe d'attributs n°4 : Dans classes/Category.php : - Vers la ligne 421, vous devez voir : $result = Db::getInstance()->ExecuteS($sql) ; - Copiez juste en dessous le code ci dessous en prenant soin de remplacer le groupe ID : /* Début du script */ /*C'est ce numéro qui doit être modifié par l'ID de votre groupe */ $numero_du_groupe = 4; /* Cette boucle sert à ajouter au produit l'attribut de taille */ for ($i=0;$i<=count($result);$i++){ $nouvelle_requette = 'SELECT al.name FROM '._DB_PREFIX_.'product_attribute pa JOIN '._DB_PREFIX_.'product_attribute_combination pac ON pac.id_product_attribute = pa.id_product_attribute JOIN '._DB_PREFIX_.'attribute_lang al ON (al.id_attribute = pac.id_attribute AND al.id_lang = '.intval($id_lang).') JOIN '._DB_PREFIX_.'attribute a ON (a.id_attribute_group = '.$numero_du_groupe.' AND a.id_attribute = pac.id_attribute) WHERE pa.id_product = '.$result[$i]['id_product'].' AND pa.quantity >= 1'; $attributs = Db::getInstance()->ExecuteS($nouvelle_requette); if($attributs){ foreach($attributs as $ajouter_au_tableau){ $result[$i]['attribute'][]= $ajouter_au_tableau['name']; } } } /* Fin du script */ Dans themes/votretheme/product-list.tpl : - Placez où vous le souhaitez : if $product.attribute} Taille dispo / Couleur dispo (ce que vous voulez hein ): {foreach from=$product.attribute item=attribute name=attribute} {$attribute} {/foreach} {/if} Ce code fonctionne sur les 1.3 de Presta. Il fonctionne très très bien sur tous mes produits en revanche, j'ai un petit problème sur certains. En effet, j'ai plusieurs tailles XS puisque j'ai du Noir en XS, Rose en XS, ect.... Donc ce petit bout de code m'affiche ainsi : XS XS XS S S S sur certains produits. Sauriez-vous comment modifier cette boucle pour n'affichez qu'une seule fois la déclinaison ? Merci Link to comment Share on other sites More sharing options...
Cerise Posted September 5, 2011 Author Share Posted September 5, 2011 Un petit up ? Il semblerait donc que ce bout de donne prenne toutes les combinaisons donc 3 fois XS (puisque XS en plusieurs couleurs ect). Comment faire pour n'avoir que les déclinaisons de tailles et non toutes les combinaisons ? Merci ! Link to comment Share on other sites More sharing options...
Cerise Posted September 10, 2011 Author Share Posted September 10, 2011 Bon, après juste une semaine de recherche (...), j'ai déjà réussi un truc : à afficher que le premier attribut donc la taille XS (il en reste juste 5 à afficher ) Grace à : $result[$i]['attribute']['name']= $ajouter_au_tableau['name']; En gros, je voudrais que le nom des attributs dans "Taille" à savoir : XS, S, M & co Une idée ? Link to comment Share on other sites More sharing options...
Cerise Posted December 5, 2011 Author Share Posted December 5, 2011 Hello, Toujours aucune petite idée pour moi ? J'ai même essayé en achetant un module qui a fait tout planter mon site J'étais ravis ! 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