Jump to content

Gros problème avec les prix des déclinaisons !


Recommended Posts

Bonjour,

 

Je ne sais pas si je m'y prend bien pour remplir les prix de mes articles, voici comment je procède :

Je remplis la fiche d'un article en mentionnant le prix à 0.00E pour mes articles ayant des déclinaisons, c'est ensuite que je rajoute chaque déclinaison avec un supplément de prix égal au prix total de chaque déclinaison.

Je procède de cette façon car le prix de mes articles de base peuvent varier sans forcément que le prix des options varient pour autant, ce qui m'évite de recalculer le prix de toutes les déclinaisons à chaque fois que le prix de l'article de base est modifié ou en promo.

Est-ce que c'est une méthode déconseillée ?

 

Voici les anomalies que j'ai constaté : (c'est valable également pour les articles par défaut lors de l'installation)

 

1/ Dans les déclinaisons de prix, si le produit par défaut est remisé alors l'image "-x%" s'affiche à toutes les autres déclinaisons (même celles non remisées) avec le prix barré et le même prix non barré, la remise ne s'applique donc pas mais fait croire au client qu'il y a une remise sur ce produit, comment faire pour corriger ça et dissocier les remises produit par produit coté client ?

 

2/ Dans le menu, si on clique sur le nom d'un fabricant cela affiche la liste des produits de ce fabricant mais c'est le prix de la déclinaison la plus chère qui s'affiche en face chaque produit sans mentionner la déclinaison dont il sagit (de quoi faire fuir les clients).

 

Comment faire pour qu'en cas de déclinaisons l'affichage dans la liste des produits soit le prix le moins chère des déclinaisons avec la mention "A partir de" ?

 

PS : J'utilise la v1.5.4.0

 

Merci.

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

Je n'ai pas essayé mais pour ton point 2, est ce que le prix affiché sur la page d'un fabricant (ce n'est pas le même sur la page de la catégorie ?) n'est pas celui de la déclinaison par défaut ?

Dans ce cas, à toi de selectionner la bonne déclinaison par défaut.

Link to comment
Share on other sites

Bonjour à tous,

 

Quelqu'un a-t-il réussi à trouver une parade à ce bug?

 

Suite à une mise à jour de ma 1.5.2 vers la 1.5.4, je confirme que ce problème.

Mon constat est le suivant: c'est toujours le prix de la déclinaison par défaut qui s'affiche.

Lorsqu'on change de déclinaison, le prix ne bouge pas.

 

Merci pour votre aide!

Cordialement,

 

Fred

Link to comment
Share on other sites

Bonjour Frédéric D.,

 

Dans ce cas nous n'avons pas exactement le même bug, car dans mon cas c'est le prix de la déclinaison la plus chère qui s'affiche.

 

Exemple : j'ai une fiche produit à 10€ qui est par défaut, avec 3 déclinaisons à 20€, 30€ et 40€, et c'est 40€ qui s'affiche, si je supprime la déclinaison à 40€ c'est 30€ qui s'affiche, et ainsi de suite soit toujours la déclinaison la plus chère et ce peut importe laquelle est par défaut.

 

L'idéal serais de faire affiche lorsqu'il existe des déclinaisons "A partir de xx,xx€" (xx,xx étant le prix de la déclinaison la moins chère peut importe quelle déclinaison est mise par défaut.

 

Autre bug constaté : je peut mettre une remise (montant ou %) sur n'importe quelle déclinaison, elle sera prise en compte seulement pour cette déclinaison, mais si je met une remise sur la déclinaison par défaut alors l'image de remise "-x%" s'affiche sur toutes les déclinaisons avec le prix barré qui est égal au prix remisé, ce qui fait croire une remise au client alors qu'il n'y en a pas.

 

 

PS : je suis sur une v1.5.4.0 avec installation propre sans mise à jour.

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

  • 1 month later...
  • 2 weeks later...

Hello à tous,

J'ai remarqué quelque chose de particulier en changeant de thème, peut-être que cela peut donner une piste de solution.

 

Avez-vous essayé de mettre le template par défaut de Prestashop (qu'importe la version) pour voir comment sont gérées les déclinaisons ?

 

Dans mon cas, le template de base gère très bien les déclinaisons dans tous les cas. Par contre avec un template fraîchement acheté, je rencontre le problème suivant :

- lorsque je regarder les articles de la boutique et que je choisis une autre déclinaison, le prix ne change pas.

 

Donc problème de template ?

 

Bonne journée à tous !

Link to comment
Share on other sites

Bonsoir,

 

pour répondre à Olivia :

dans "mon_theme/js/product.js", j'ai modifié la ligne 671.

J'ai remplacé "window.location = url + request;" par "window.location.href(url + request);"

 

 

Bonne soirée

Frane

  • Like 1
Link to comment
Share on other sites

  • 1 month later...
  • 1 month later...

Bonjour,

J'ai Prestashop 1.5.3.1 et j'ai aussi un pb du même genre. En front office, j'ai bien le menu déroulant de mes déclinaisons de poids (ex : 60gr, 100gr, 300gr), mais le site ne garde pas la sélection que je choisis pour le tester et ne fais pas varier le prix. Si je choisis la déclinaison 60gr, le site autocorrige pour prendre le 300gr et m'affiche le prix du 100gr (qui est le prix de mon produit par défaut).

J'ai testé la ligne de code proposée par Frane, mais rien n'y fait.

La déclinaison poids-prix ne fonctionne pas.

Merci pour votre aide.

Claire

Link to comment
Share on other sites

  • 2 weeks later...

RESOLU pour mon cas.

Visiblement il faut corriger le "taux de change". Dans menu LOCALISATION > DEVISES : passer le taux de change à 1 au lieu de 0.

Et cela règle le problème de déclinaison poids/prix.

 

Je confirme, cela résout le problème.

 

Merci

Link to comment
Share on other sites

  • 5 months later...

Bonjour à tous,

 

J'ai plusieurs déclinaisons pour un produit (avec une augmentation de prix) et c'est toujours le prix de la déclinaison la plus chère qui s'affiche dans la liste des produits.

 

Comment faire pour qu'en cas de déclinaisons l'affichage dans la liste des produits soit le prix le moins chère des déclinaisons affiche ?

 

Je précise que j'ai bien sélectionné la bonne déclinaison par défaut..et rien j'ai toujours la plus chère qui s'affiche.

 

Quelqu'un peut m'aider résoudre ce bug?

 

Merci bcp pour votre aide.

 

Fany

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour,

 

Le bug du point 2 du premier post était bien un bug dans les fabricants qui a été résolu depuis lors.

 

Néanmoins le même type de comportement arrive en effet mais pour une autre raison :

 

C'est le module de navigation à facettes qui est bugé et qui en est le responsable.

 

Pour afficher le prix de la déclinaison par défaut, il faut faire le correctif suivant :

 

Vers la ligne 1991 (PS 1.5.6.2) du fichier blocklayered.php du module, ajouter la clause suivante sur pa.default_on, comme ceci :

			AND c.active = 1
			AND p.id_product IN ('.implode(',', $product_id_list).')
			AND (pa.default_on = 1 OR ISNULL(pa.default_on))
			GROUP BY product_shop.id_product

La navigation à facettes n'étant pas prévue pour afficher les déclinaisons dans les résultats (ce qui est bien dommage pour un tel filtre), en réalité ce n'est pas le prix le plus cher qui sortait mais le prix de la dernière déclinaison (id max).

 

Cette modif ne permettra donc pas d'afficher le prix le moins cher mais bien le prix par défaut, ce qui est déjà mieux que rien ;)

Edited by Zebx (see edit history)
  • Like 1
Link to comment
Share on other sites

  • 2 months later...

Je suis sous PS 1.6.0.5 et bien que ce fichier blocklayered.php soit présent, je ne vois pas où insérer ce code proposé par Zebx !

Mais pourquoi ce bug ne fait-il pas l'objet d'une correction de fond par "Prestashop" une fois pour toute ?

Quelqu'un peut-il me guider pour l'emplacement où coller ce code svp ?

Link to comment
Share on other sites

Bonjour,

 

Tu peux rechercher cette ligne-ci :

AND p.id_product IN ('.implode(',', $product_id_list).')

et ajouter en-dessous cette ligne-ci :

AND (pa.default_on = 1 OR ISNULL(pa.default_on))
Link to comment
Share on other sites

  • 1 month later...
  • 3 months later...
  • 9 months later...
  • 4 months later...

Bonsoir,

 

pour répondre à Olivia :

dans "mon_theme/js/product.js", j'ai modifié la ligne 671.

J'ai remplacé "window.location = url + request;" par "window.location.href(url + request);"

 

 

Bonne soirée

Frane

Merci - résout bien le problème de ré-affichage après changement attributs version 1.6.1.2

Link to comment
Share on other sites

  • 3 months later...
Lors de la création de mes produits sur prestashop v1.6 je dois mettre en place une déclinaison en proposant :

- Livraison/Installation

- Garantie

- Reprise

Or les reprises baissent le coût du produit tandis que la livraison/installation et la garantie l'augmentent.

Lors de la génération des déclinaisons par défaut c'est une augmentation qui est effectuée, actuellement pour obtenir les déclinaisons désirées il faudrait calculer le prix de chaque cas éventuel et le rentrer à la main. Ce qui prendrait un temps incommensurable. N'y a-t-il pas une solution plus adaptée ?

 

Merci d'avance ....

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

Bonjour à tous, j'ai aussi le même bug 

 

Lorsque nous créons un prix spécifique applicable sur toutes les déclinaisons d'un produit, seule la déclinaison principale est modifiée correctement, les autres déclinaisons ne prennent pas en compte le prix spécifique. Nous avons pourtant bien sélectionné "appliquer ce prix spécifique sur toutes les déclinaisons".

 

Nous avons essayé avec un prix spécifique via une remise en euros et en %.

 

Quelqu'un a t-il une idée pour résoudre cela ?

 

Version 1.6.1.4

Bug testé sur trois sites différents sous Presta 1.6.1.4.

Link to comment
Share on other sites

  • 2 weeks later...
  • 5 months later...

RESOLU pour mon cas.

Visiblement il faut corriger le "taux de change". Dans menu LOCALISATION > DEVISES : passer le taux de change à 1 au lieu de 0.

Et cela règle le problème de déclinaison poids/prix.

Merci !!!

 

On avait installé le pack de langues PRESTASHOP, pour la gestion de l'anglais dans la e-boutique. Ca a créé automatiquement les devises livre sterling et dollar, et je ne sais pas pourquoi, mais dans le menu > LOCALISATION > DEVISES > Ligne euro:

 

j'avais Devise = Euro, Code ISO = EUR, ISO code numérique =  978 et surtout Taux de change = 0.877347  au lieu de 1 !!!

 

On a galéré à débugger et à essayer de lancer des requêtes sql sur le serveur partagé!

1 journée complète de débug, et grâce à votre message, on a réussi à corriger ce bug !!!  Un grand merci !!!

 

Pour décrire mon bug: Ma déclinaison de produits donnait des calculs de prix erronés:

prix de base: 26,50 euros

prix d'option:  diminution de -3.5 euros (paramétrage en back office)

=> ça me donnait en front-office lorsque je sélectionnais l'option: 22,87 ou quelque chose dans le genre au lieu de 23 euros!

Link to comment
Share on other sites

  • 2 years later...

Une autre solution qui a fonctionné pour moi est de regarder si vous avez le fichier global.tpl dans votre thème avec la déclaration de ces 2 lignes :

- {addJsDef baseDir=$content_dir}

- {addJsDef currencyFormat=$currency->format|intval}

Ensuite rendez-vous dans le fichier footer.tpl de votre thème et vérifiez que le fichier global.tpl est bien inclu dans celui-ci comme suit :

- {include file="$tpl_dir./global.tpl"}

Pour moi ça à fonctionné.

Bonne journée à tous.

 

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