Jump to content

Affichage des pièces disponible dans product_list


Recommended Posts

Bonjour,

 

J'essaie de mettre avec difficulté l'affichage des nombres de pièces disponibles dans le fichier product_list.tpl

 

J'ai mis ce code :

 

{if $product.quantity_all_versions|@count > 0}
{$product.quantity_all_versions} <!-- Pour les produits ayant des attributs-->
{/if}
{if $product.quantity|@count > 0}
{$product.quantity}<!-- Pour les produits n'ayant pas d' attributs-->
{/if}

 

du coup si je vais dans une liste de produit sans attribut il m'affiche bien le nombre de pièces disponible.

 

Si je vais dans une liste de produit avec attribut il m'affiche également bien le stock mais m'affiche également le stock sans attribut ( qui est du coup pas bon depuis prestashop 1.4)

 

Ce qui fait par exemple pour un produit type blouson il m'affiche 50 Pièces Disponibles - 1 Pièce disponible.

 

Je souhaiterai trouver un moyen pour afficher une condition d'affichage du genre si le produit a des attributs tu affiche ce code la

{if $product.quantity_all_versions|@count > 0}
{$product.quantity_all_versions} <!-- Pour les produits ayant des attributs-->
{/if}

si il n'en a pas tu affiche ce code la

{if $product.quantity|@count > 0}
{$product.quantity}<!-- Pour les produits n'ayant pas d' attributs-->
{/if}

.

 

Par avance merci

Link to comment
Share on other sites

Bon pour ce que sa intéresse :

 

Afficher les quantités dans product_list.tpl Fonctionne sous prestashop 1.4.2.

 

{if $product.quantity_all_versions|@count > 0}
{$product.quantity_all_versions}
{elseif $product.quantity|@count > 0}
{$product.quantity}
{/if}

  • Like 1
Link to comment
Share on other sites

  • 2 months later...

bonjour

 

je reviens sur le sujet , a quoisert le |@count

car j'ai voulu utilisé pour afficher un stock et qund j'ai fait une condition $product.quantity|@count == 0 ca ne marche pas

 

autre question :peut on savoir sur prestashop si le stock va etre réapprisionné afin de faire apparaitre un texte comme quoi le produit va etre diponible dans quelques jours

 

merci

Link to comment
Share on other sites

@count renvoi un nombre...

dans ton exemple tu cherche a récupérer le nb affiché dans ta base de donnée pour la quantité disponible de tes produits.

 

donc ta condition cherche à afficher un contenu si le nb renvoyé pour quantité égal.

{if $product.quantity|@count == 0}
Le produit n'est plus disponible pour le moment!
{/if}

 

tu adaptes bien évidement le contenu mais ce code devrait fonctionner

Link to comment
Share on other sites

la question est : y'a t'il des produits qui ne seront pas réapprovisionnés? parce que sinon la condition que tu cherche à faire fonctionner serait suffisante :

{if $product.quantity_all_versions|@count > 0}
{$product.quantity_all_versions}
{elseif $product.quantity|@count > 0}
{$product.quantity}
{else}
Le produit n\'est plus disponible pour le moment mais le réapprovisionnement est en cours!
{/if}

Link to comment
Share on other sites

je voudrais pouvoir indiquer un delai mais je ne sais pas si c'est possible

genre que le produit sera disponible sous 8 jours

 

je crains que le mouvement de stock ne gre cette fonction

 

ou bien je pourrais tres bien feinter la chose en mettant par exemple mon stock à -8 et dans ma condition si les produits sont a -8 j'affiche "reapprivisionnement sous 8jours"

Link to comment
Share on other sites

  • 2 months later...

bonjour a tous et merci pour ce code.

 

Par contre si j'applique :

{if $product.quantity_all_versions|@count > 0}

{$product.quantity_all_versions}

{elseif $product.quantity|@count > 0}

{$product.quantity}

le nombre de pieces en stock est bien affichée, mais les stock négatifs aussi.

 

Comment faire

 

merci

Edited by jp77 (see edit history)
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...