Jump to content

Navigation à facette: Le tri par poids ne prend pas en compte certains produits


Recommended Posts

Bonjour!
 
J'ai un petit problème avec la navigation à facette de prestashop (comme tant d'autres sur ce forum  :P)

ça fait des jours que je consulte forums et pages web, à comparer les fichiers du module avec ceux de la source Git... etc
 
Le problème
 
Quand on arrive sur la page liste des produits, le "range slider" ou "glissière" du tri par poids de la navigation à facette m'affiche une fourchette entre 0.88kg et 4kg.
 
Le truc c'est que dans la liste de produits, il y a un produit qui dépasse les 4kg (il fait 4.390000) et s'affiche quand-même.
Là n'est pas le soucis, je veux qu'il s'affiche bien entendu, mais le premier problème ici c'est que la glissière ne le prends pas en compte pour la valeur MAX.
 
Dès que j'applique un tri (que ce soit avec les filtres natifs de PS ou un des filtres de la navigation a facette) le tri par poids s'applique (donc après avoir appliqué un quelconque filtre ou tri) et là je perds l'affichage des produits qui ne sont pas dans la fourchette MIN et MAX de la glissière poids.
 
L'URL change aussi à ce moment là, pas avant, on a les paramètres poids qui viennent s'ajouter.
 
Ce que j'ai déjà fais
 
- Dans le Back Office, J'ai déjà vérifié si il y avait une différence de saisie pour le poids du produit qui disparait (celui qui pèse plus que 4 kg) dans la section livraison. Il n'y en avait pas, ils ont tous 6 chiffres après la virgule.
 
- J'ai reconstruit, indexé plusieurs fois le tout.
Les premières fois j'ai quand-même gagné plusieurs produits qui ne s'affichait pas à la base.
 
- Dans le fichier classes/controller/FrontController.php je suis allé ajouter une clé "8" avec la valeur "weight" dans l'array suivant: 

$order_by_values = array(0 => 'name', 1 => 'price', 2 => 'date_add', 3 => 'date_upd', 4 => 'position', 5 => 'manufacturer_name', 6 => 'quantity', 7 => 'reference', 8 => 'weight');

ça n'a malheureusement rien changé.
 
Ce que j'essaie de faire actuellement c'est d'essayer de tricher, en allant dans le bon fichier js (que je dois trouver) et de dire que la valeur MAX du slider/glissière doit toujours se définir avec l'ajout d'1 kg en plus.
De cette façon, le module serait toujours obligé d'afficher la valeur maximum + 1kg. Ce qui ferais afficher le produit manquant, dépassant actuellement les 4 kg.
 
J'espère ne pas trop être à côté de la plaque sincèrement, je n'ai pas un énorme savoir en matière de développement, je commence à me débrouiller mais c'est pas encore tout à fait ça, donc j'espère que quelqu'un pourra me diriger sur la manière et la logique d'appréhender ce problème.
Rien que me dire si c'est un problème de requête ou autre par exemple serait déjà cool.
 
Par avance merci :)

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