Sur la page produits
De TheliaDoc.
Dans une page produit, on pourra afficher les déclinaisons (couleur, taille, pointure, parfum, etc.) d'un produit de la façon suivante :
<form action="panier.php" method="post">
<input type="hidden" name="action" value="ajouter" />
<input type="hidden" name="ref" value="#REF" />
<T_DECLI>
<THELIA_DECLI type="DECLINAISON" rubrique="#RUBRIQUE_ID" produit="#ID">
<p> #TITRE :
<select name="declinaison#ID" >
<THELIA_DECLIDISP type="DECLIDISP" declinaison="#ID" produit="#PRODUIT" stockmini="1">
<option value="#ID">#TITRE</option>
</THELIA_DECLIDISP>
</select>
</THELIA_DECLI>
</p>
</T_DECLI>
Aucune déclinaison
<//T_DECLI>
<input type="image" src="bt_ajout_panier.png" border="0" /></a>
</form>
Si l'on souhaite gérer les déclinaisons, on ne peut plus utiliser simplement un lien de type :
<a href="panier.php?action=ajouter&ref=#REF" class="LIEN_commander"><img src="bt_ajout_panier.png" alt="Ajouter"></a>
On doit passer par un formulaire.
Notes complémentaires : Si stockmini="0", seules les déclinaisons associées au produit déclarées comme activées dans le BO seront prises en compte dans la liste de sélection. Si stockmini="1" ou plus, seules les déclinaisons associées au produit disposant d'un stock supérieur ou égal à la valeur déclarée seront présentes dans la liste de sélection
Utilisation d'autres éléments de formulaire que le <select> :
Pour que la déclinaison soit pris en compte et ressortie après par #DECVAL ( dans le panier par exemple ), on doit transmettre par le formulaire :
- la DECLIDISP dans la variable (name="...") declinaisonXX où XX est l'ID de la déclinaison
- la valeur (value="...") correspondant à l'ID de la DECLIDISP choisie.
Exemple avec bouton radio :
<form action="panier.php" method="post" name="formulaire">
<input type="hidden" name="action" value="ajouter" />
<input type="hidden" name="ref" value="#REF" />
<div class="descriptionProduit">
#DESCRIPTION
<T_DECLI>
<THELIA_DECLI type="DECLINAISON" rubrique="#RUBRIQUE_ID" produit="#ID">
<p>#TITRE</p>
<THELIA_DECLIDISP type="DECLIDISP" declinaison="#ID" produit="#PRODUIT" >
<p>#TITRE</p>
<input type="radio" name="declinaison#DECLINAISON" value="#ID">
</THELIA_DECLIDISP>
</THELIA_DECLI>
</T_DECLI>
Aucune déclinaison
<//T_DECLI>
<div class="prixProduit">
<div id="prix">A partir de #PRIX €</prix></div>
<input type="submit" value="Ajouter au panier"/>
</div>
</form>
On a ainsi pour chaque déclinaison une liste de bouton radio exclusifs.