Jump to content

Problème pour 'Afficher les dernières quantités'


Recommended Posts

Bonjour, je souhaite afficher les dernières quantités d'un produit lorsque celui ci est inférieur à 5.

J'ai donc activé l'option dans prestashop 1.6: Afficher les dernières quantités lorsque celles-ci sont inférieures à 5

J'avais donc un message avec dernière(s) pièces disponibles. Mais je n'avais pas ma quantité (5 ou inférieur à 5).

J'ai donc testé avec la variable: {$product->quantity}, cela affiche la quantité réel sur tous les produits, et non sur les produit avec un stock inférieur à 5.

ma ligne dans le product.tpl

<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity} {l s='article(s) en stock'}</span></p>

Ai-je oublié quelque choses?

merci pour votre aide.

 

Link to comment
Share on other sites

Ben...

if ($product->quantity > $last_qties || $product->quantity <= 0)

ca veut dire en français:

si la quantité est supérieure à 5 ou si la quantité est inférieure ou égale à 0, donc c'est un peu normal que cela affiche l'inverse de ce que vous voulez^^

Link to comment
Share on other sites

30 minutes ago, Eolia said:

Ben...


if ($product->quantity > $last_qties || $product->quantity <= 0)

ca veut dire en français:

si la quantité est supérieure à 5 ou si la quantité est inférieure ou égale à 0, donc c'est un peu normal que cela affiche l'inverse de ce que vous voulez^^

hum, il faut donc que je change 0 par 5.

je vais testé, merci.

 

Link to comment
Share on other sites

Je pense que vous ne comprenez pas ce que vous écrivez :(

si vous mettez 5, ça voudra dire:

si le produit est supérieur à 5 et si le produit est inférieur ou égal à 5...

Si vous ne voulez afficher les quantités restantes QUE si la limite de stock est atteinte c'est :

if ($product->quantity < $last_qties)

 

Link to comment
Share on other sites

6 hours ago, Eolia said:

Je pense que vous ne comprenez pas ce que vous écrivez :(

si vous mettez 5, ça voudra dire:

si le produit est supérieur à 5 et si le produit est inférieur ou égal à 5...

Si vous ne voulez afficher les quantités restantes QUE si la limite de stock est atteinte c'est :


if ($product->quantity < $last_qties)

 

J'ai donc testé ce

{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity > $last_qties} {l s='article(s) en stock'}</span></p>
            {/if}

mais le nombre de produit n'apparait pas.

J'ai juste mon texte qui apparait: Il ne reste plus que article(s) en stock

ai-je oublié quelque chose?

Link to comment
Share on other sites

<p class="warning_inline" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if}>
	{if ($product->quantity <= $last_qties)}
	{l s='Il ne reste plus que'} <span style="color:#44B449;">{$last_qties} {if $last_qties == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>
	{/if}
</p>

 

Link to comment
Share on other sites

13 hours ago, Eolia said:

<p class="warning_inline" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if}>
	{if ($product->quantity <= $last_qties)}
	{l s='Il ne reste plus que'} <span style="color:#44B449;">{$last_qties} {if $last_qties == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>
	{/if}
</p>

 

Merci Eolia,

j'ai testé avec ceci:

<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >
{if ($product->quantity <= $last_qties)}
{l s='Il ne reste plus que'} <span style="color:#44B449;">{$last_qties} {if $last_qties == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>{/if}</p>

j'ai bien mon message 'il ne reste plus que 5 articles

Mais cela affiche quand même 5 même quand j'en ai plus qu'un.

Cela n'affiche pas le 'vrais' stock

Link to comment
Share on other sites

Oups...

<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >
{if ($product->quantity <= $last_qties)}
{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity} {if $last_qties == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>{/if}</p>

 

Link to comment
Share on other sites

1 hour ago, Eolia said:

Oups...


<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >
{if ($product->quantity <= $last_qties)}
{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity} {if $last_qties == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>{/if}</p>

 

ca fonctionne, la bonne quantité est affiché.

Juste un problème, ont ne peut plus ajouter au panier sur un produit ou le message ne s'affiche pas

Link to comment
Share on other sites

17 minutes ago, Eolia said:

C'est à dire ? Le bouton n’apparaît pas ? Car il n'y a pas vraiment de lien, là on ne touche qu'à l'affichage d'un bloc d'information.

si le bouton apparait, mais quand ont clique dessus, rien ne s'affiche au panier, et la fenetre de confirmation ne s'affiche pas non plus.

Ont clique sur le bouton, mais pas d'action

Link to comment
Share on other sites

50 minutes ago, Eolia said:

Affichage des erreurs activés ?

Erreur dans la console du navigateur ?

J'ai vidé le cache, ca fonctionne.

Super! Merci EOLIA

J'ai mis article(s) car le S s'affiche même si il reste 1 produit.

PS:As tu reçu mon mail suite à notre conversation de novembre? car je n'ai pas eu de news.

Link to comment
Share on other sites

Non c'est la variable qui n'est pas bonne, voici le code final ok

<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >
{if ($product->quantity <= $last_qties)}
{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity} {if $product->quantity == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>{/if}</p>

PS: Oui mais j'ai pris du retard suite à de gros soucis de net avec Orange...

Link to comment
Share on other sites

3 minutes ago, Eolia said:

Non c'est la variable qui n'est pas bonne, voici le code final ok


<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >
{if ($product->quantity <= $last_qties)}
{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity} {if $product->quantity == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>{/if}</p>

PS: Oui mais j'ai pris du retard suite à de gros soucis de net avec Orange...

Je vais testé ca dans la journée.

Ps: pas de problème pour le retard, mais je ne savais pas si tu avait recu mon mail.

Ce n'est plus pressé.

Link to comment
Share on other sites

On 12/24/2018 at 11:32 AM, Eolia said:

Non c'est la variable qui n'est pas bonne, voici le code final ok


<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >
{if ($product->quantity <= $last_qties)}
{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity} {if $product->quantity == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>{/if}</p>

PS: Oui mais j'ai pris du retard suite à de gros soucis de net avec Orange...

Merci Eolia, ca fonctionne très bien.

Cela as t il un impacte sur le cache?

Car j'utilise le page cache ultimate.

Link to comment
Share on other sites

  • 6 months later...

je reviens sur ce sujet, car je voudrais 'peaufiner' la quantité qui s'affiche 0 quand il n y a plus de stock.

Comment ne pas afficher le message si la quantité est à 0?

Sur certains produit, je vais autoriser les commandes hors stock, et ce message s'affiche. Je vous juste ne pas l'afficher quand la quantité est à 0

merci pour votre aide précieuse.

Link to comment
Share on other sites

<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >
{if ($product->quantity <= $last_qties)}
                                       {if $product->quantity == 0} {else}
{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity} {if $product->quantity == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>{/if}{/if}</p>

Devrait très bien fonctionné 

Link to comment
Share on other sites

40 minutes ago, Farris27 said:

<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >
{if ($product->quantity <= $last_qties)}
                                       {if $product->quantity == 0} {else}
{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity} {if $product->quantity == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>{/if}{/if}</p>

Devrait très bien fonctionné 

bonjour,

ca ne fonctionne pas.

J'ai ajouté {if ($product->quantity <= $last_qties)}

et fermé le if à la fin du code.

Mais la phrase est toujours là quand il y a 0 produit

Ai-je oublié quelque chose?

merci pour ton aide

Link to comment
Share on other sites

Bonjour, essayons cela alors :  

<p class="warning_inline" style="color:#000;display: none;" id="last_quantities"{if ($product->quantity > $last_qties || $product->quantity <= 0) || $allow_oosp || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none"{/if} >
{if ($product->quantity <= $last_qties)}
                                       {if $product->quantity != 0} 
{l s='Il ne reste plus que'} <span style="color:#44B449;">{$product->quantity} {if $product->quantity == 1}{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span>{/if}{/if}</p>

Peux tu me faire un copier coller de ce que tu as tenté? 

Link to comment
Share on other sites

Voici

<span id="availability_value_bis" class="label{if $product->quantity <= 0 && !$allow_oosp} label-danger{elseif $product->quantity <= 0} label-warning{else} label-success{/if}">{if $product->quantity <= 0}{if $PS_STOCK_MANAGEMENT && $allow_oosp}{$product->available_later}{else}{l s='indisponible'}{/if}{elseif $PS_STOCK_MANAGEMENT}{$product->available_now}{/if}</span>	pour l'expédition.
					
					{if ($product->quantity <= $last_qties)} 
					{if $product->quantity != 0} 
<p style="margin-bottom: initial;"><span>{l s='Il reste '}</span> <span id="availability_value_bis">{$product->quantity} {if $product->quantity == 1}<span id="availability_value_bis">{l s='article'}{else}{l s='articles'}{/if} {l s='en stock'}</span></span></p>{/if}{/if}
					</div>

 

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