Jump to content

Gestionnaire SQL: comment afficher le message "stock disponible" à tous les produits en stock


Recommended Posts

Bonjour,

 

Je suis sur Prestashop 1.6.1.9.

 

Je cherche un moyen de mettre le message "Stock disponible" à tous les produits qui sont en stock dans mon site. Mais comme je n'ai pas envie de saisir ce message pour mes 600 produits, ce serait trop long et fastidieux :wacko::(

 

Peut-être faire une requête SQL?

 

Alors j'ai vu qu'il existe un outil "Gestionnaire SQL" proposé par Prestashop, mais je ne sais pas du tout comment l'utiliser.

J'y ai déjà entré cette requête:

SELECT available_now =  'Stock disponible'
FROM ps_product_lang
WHERE id_lang=(1)

 

Mais ça ne marche pas.

 

Peut-être "Gestionnaire SQL" n'est pas fait pour ça, alors pouviez-vous m'indiquer quels sont d'autres moyens plus adéquates.

S'il y a quelqu'un qui pourrait m'aider, j'en serai très reconnaissant. :)

 

Merci.

Edited by CoolWistiti (see edit history)
Link to comment
Share on other sites

Là je crois qu'on atteint des sommets...

 

1°) cette option est native et proposée dans tous les thèmes. Il suffit de cocher l'option dans le BO "Afficher les stocks disponibles"

2°) Quand on y connait rien en requête SQL on évite, car vous risquez de gros ennuis.

 

Vous faites une requête dans une table lang qui ne vous donnera jamais les stocks vu qu'ils n'y sont pas^^

Link to comment
Share on other sites

Bonjour Eolia,

 

Je me suis très mal exprimer, je crois :wacko:

 

Ce dont vous me parlez c'est dans "Préférences/Produits/Afficher les quantités disponibles sur la fiche produit", et c'est pour afficher la quantité du stock disponible à un produit.

 

Ce que je voudrais faire c'est quand un produit est en stock, il y aurait un message "Stock Disponible" affiché dans la page produit. Et je sais que je peux saisir ce message via le backoffice dans "Catalogue/Produits/MON PRODUIT/Quantités" puis je rempli le champ "Message si produit en stock". Mais malheureusement j'ai 600 produits à saisir. Et je sais que si je passais par une requête SQL, cela me prendrait que quelques secondes pour le faire. C'est pour ça que je vous demande de l'aide pour me guide à faire cette requête; ce qui me ferait gagner énormément de temps.

 

Et je viens d'apprendre que je ne pouvais pas faire ceci avec "Paramètres Avancés/Gestionnaire SQL".

 

Par contre le seul moyen qui me reste c'est de passer par phpMyAmin avec cette requête:

update ps_product_lang set available_now = 'Stock disponible' where id_lang=(1)

 

Je l'ai fait mais ça ne marche pas. J'ai du loupé quelque chose, sachant que je suis novice en Prestashop. Si vous pourriez me guider ce serait super sympa.

 

Merci d'avance. :)

Edited by CoolWistiti (see edit history)
Link to comment
Share on other sites

Salut,

dans ton product.tpl

{if $product->quantity > 0}{l s='Stock available'}{/if}

cdt

 

Merci pour votre réponse. Ceci m'éviterait de passer par une requête SQL.

 

Mais je ne sais pas où exactement dans le fichier product.tpl mettre votre condition.

 

Je pense qu'il faut le mettre dans cette ligne mais je ne sais pas où exactement:

<span id="availability_value"{if $product->quantity <= 0} class="warning_inline"{/if}>{if $product->quantity <= 0}{if $allow_oosp}{$product->available_later}{else}{l s='This product is no longer in stock'}{/if}{else}{$product->available_now}{/if}</span>  

 

Merci de me préciser s'il vous plaît.

 

 

 

 

    

 

Link to comment
Share on other sites

C'est bon.

 

Bon, si je mets {if $product->quantity > 0}{l s='Stock disponible'}{/if} n'importe où dans product.tpl alors il va être placé n'importe où dans ma page produit.

 

Si je veux l'afficher à l'endroit où il devrait être comme prévu dans le thème de Prestashop alors voici ce que j'ai fait dans product.tpl.

 

Je remplace dans le fichier product.tpl:

      <p id="availability_statut"{if !$PS_STOCK_MANAGEMENT || ($product->quantity <= 0 && !$product->available_later && $allow_oosp) || ($product->quantity > 0 && !$product->available_now) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
        <span id="availability_label">{l s='Availability:'}</span>
        <span id="availability_value" 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='This product is no longer in stock'}{/if}{elseif $PS_STOCK_MANAGEMENT}{$product->available_now}{/if}</span>
            </p>


 

Par:
   

 {if $product->quantity > 0}
      <p id="availability_statut">
        <span id="availability_value">Stock disponible</span>
      </p>  
      {else}
          <p id="availability_statut"{if !$PS_STOCK_MANAGEMENT || ($product->quantity <= 0 && !$product->available_later && $allow_oosp) || !$product->available_for_order || $PS_CATALOG_MODE} style="display: none;"{/if}>
       <span id="availability_label">{l s='Availability:'}</span>
        <span id="availability_value" 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='This product is no longer in stock'}{/if}{elseif $PS_STOCK_MANAGEMENT}{$product->available_now}{/if}</span>
            </p>
            {/if}

Sachant que je n'ai pas le thème par défaut de Prestashop. Mais cette partie du fichier product.tpl de mon thème est quasiment identique à celle du thème par défaut.

 

 

Et maintenant je n'ai plus besoin de saisir en backoffice le message quand le produit est en stock pour les futurs produits et les anciens aussi.

 

Merci beaucoup de m'avoir mis sur la bonne voie.

 

Bonne journée

Edited by CoolWistiti (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...