THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonjour à tous,

Je souhaite afficher les caractéristiques disponibles d'un article et dessous ceux qui sont potentiellement là. Du genre pour une couleur d'un article :

bleu
marron
rose - épuisé
jaune - épuisé

Là en l’occurrence j'utilise combidecli pour la gestion des caractéristiques. J'ai essayé un truc du genre mais j'ai un doublon des articles disponible

<THELIA_combidecli type="COMBIDECLI" boucle="combinaison" produit="#ID" stockmini="1">

#TITRE

<select name="declinaison#ID" style="float: none;" onchange="this.form.submit();">

     <THELIA_combideclidisp type="COMBIDECLI" boucle="declidisp" produit="#PRODUIT" declinaison="#ID" stockmini="1">
     <option value="#ID" #FILTRE_egalite(#SELECTED||1||selected="selected")>#TITRE</option>
     </THELIA_combideclidisp>

     <THELIA_combideclidisp type="COMBIDECLI" boucle="declidisp" produit="#PRODUIT" declinaison="#ID" stockmini="0">
     <option value="#ID" #FILTRE_egalite(#SELECTED||0||selected="selected")>#TITRE - épuisé</option>
     </THELIA_combideclidisp>
                                        
</select>

</THELIA_combidecli>

Merci d'avance

Last edited by sankukai (11-10-2013 10:19:29)


Thé lia ou pas ???? parce que moi chui lia wink

Offline


Bon je suis toujours en recherche j'ai testé quelque chose du genre :

<THELIA_combi type="COMBIDECLI" boucle="declidisp" produit="#PRODUIT" declinaison="#ID" stockmini="1">
#SET{excluid,#ID,}
</THELIA_combi>

<THELIA_combidecli type="COMBIDECLI" boucle="combinaison" produit="#ID" stockmini="1">

#TITRE

<select name="declinaison#ID" style="float: none;" onchange="this.form.submit();">

     <THELIA_combideclidisp type="COMBIDECLI" boucle="declidisp" produit="#PRODUIT" declinaison="#ID" stockmini="1">
     <option value="#ID" #FILTRE_egalite(#SELECTED||1||selected="selected")>#TITRE</option>
     </THELIA_combideclidisp>

     <THELIA_combideclidisp type="COMBIDECLI" boucle="declidisp" produit="#PRODUIT" declinaison="#ID" stockmini="0" exclusion="#GET{excluid}">
     <option>#TITRE - épuisé</option>
     </THELIA_combideclidisp>
                                        
</select>

</THELIA_combidecli>

Le problème c'est que les boucles déclinaison ne prennent pas en compte l'exclusion et pour les filtres on ne peut pas exclure plusieurs id.

Si quelqu'un a une idée,

Merci d'avance.


Thé lia ou pas ???? parce que moi chui lia wink

Offline


Utilise une boucle TEST (cf. le wiki) pour réaliser l'exclusion.


OpenStudio Toulouse

Offline


Merci Roadster, j'y pensais plus c'est exactement ce qu'il me faut.

Par contre il y a quelque chose que je ne comprends pas c'est pourquoi :

<THELIA_combideclidisp type="COMBIDECLI" boucle="declidisp" produit="#PRODUIT" declinaison="#ID" stockmini="1">
#SET{excluid,#ID}
</THELIA_combideclidisp>

#GET{excluid}

ne renvoie pas la même chose que :

<THELIA_combideclidisp type="COMBIDECLI" boucle="declidisp" produit="#PRODUIT" declinaison="#ID" stockmini="1">
#ID
</THELIA_combideclidisp>

En effet sur le Set et Get j'ai juste une seule ID par déclinaison alors que sur le deuxième j'ai l'ensemble des ID des déclinaisons....

Merci


Thé lia ou pas ???? parce que moi chui lia wink

Offline


Normal, #SET fait une affectation simple: excluid contiendra toujours le dernier ID qu'a renvoyé la boucle.

Pour construire une liste fais donc: #SET{excluid,#GET{excluid},#ID}

et dans la boucle TEST, utilise le test "dansliste" :

<TEST_blabla var="#ID" test="dansliste" val="#GET{excluid}">
...


OpenStudio Toulouse

Offline


Ok merci Roadster c'est nickel,

Je ne connaissais pas la construction de liste #SET{excluid,#GET{excluid},#ID}

C'est bien pratique en tout cas.

merci


Thé lia ou pas ???? parce que moi chui lia wink

Offline


Je ne sais pas si il y a une incompatibilité avec le plugin combidecli mais lorsque je mets

<THELIA_combideclidisp type="COMBIDECLI" boucle="declidisp" produit="#PRODUIT" declinaison="#ID" stockmini="0">
<TEST_ex10 variable="#ID" test="dansliste" valeur="#GET{excluid}">
</TEST_ex10><option>#TITRE - epuise</option>
<//TEST_ex10>
</THELIA_combideclidisp>

J'ai bien mes selects qui fonctionnent, mais si sur ma fiche produit dans STOCK ET SURPLUS j'ai ma première combinaison qui a un stock de 0, ça écrit bien dans les selects mais par contre ça ne le "charge" pas et du coup j'ai mon texte "Ce produit est actuellement en rupture de stock" à la place du bouton panier.

On dirait qu'il prend en compte la valeur de la première combinaison ou il n'y a pas de stock et pourtant il affiche bien comme il faut dans les selects.

Une idée ?

Merci d'avance


Thé lia ou pas ???? parce que moi chui lia wink