Jump to content

[Résolu] Tri best sales


Recommended Posts

Bonjour,

Pour afficher les produits de ma boutique, j'ai choisi dans le BO : Tri par defaut " Position dans la categorie"
et ordre par defaut " Croissant".

Le problème est qu'a cause de ce choix les produits "Best sales" se trouvent classés de la moins bonne vente a la meilleure, c'est pas top.

Je souhaiterais uniquement forcer le classement des meilleures ventes dans le sens DESC et laisser les autres dans le sens ASC.

Merci d'avance de votre aide.

Le problème est le même pour les nouveaux produits.

Link to comment
Share on other sites

Bonjour,

Je n'ai pas testé mais si vous voulez forcez le sens du tri uniquement sur les meilleures ventes, il faut agir sur la méthode gestBestSales() de la classe ProductSale.php.


if (empty($orderWay)) $orderWay = 'DESC';



Ce code fera que si aucun tri n'est défini, cela s'affichera dans l'ordre DESC.

Cordialement,

Franck_R

Link to comment
Share on other sites

Bonjour,

effectivement, cette condition est déjà présente... Le mieux serait de regarder ce qui s'exécute vraiment dans ta requête SQL en faisant une echo de la requête ou plus simple du orderBy et orderWay.

Et sur quelle version de PS travaillez-vous?

Cordialement,

Franck_R

Link to comment
Share on other sites

Ma boutique est en 1.2.5.0
Pour ce qui est de l'écho de la requête SQL, je ne sais pas faire.
J'ai essayé de retirer/ modifier des conditions dans ProductSale.php mais ca ne donne rien de bon.
Comme rajouté ce matin dans mon 1er message, le probleme est identique avec l'affichage des nouveaux produits.

Link to comment
Share on other sites

J'ai fini par trouver la solution sur le forum

Pour les meilleures ventes, il faut remplacer dans best-sales.php ligne 12

$smarty->assign(array(
   'products' => ProductSale::getBestSales(intval($cookie->id_lang), intval($p) - 1, intval($n), $orderBy, $orderWay),
   'nbProducts' => $nbProducts));


par

$smarty->assign(array(
   'products' => ProductSale::getBestSales(intval($cookie->id_lang), intval($p) - 1, intval($n), $orderBy, "DESC"),
   'nbProducts' => $nbProducts)); 



idem pour les nouveaux produits

Remplacer dans new-products.php ligne 11

$smarty->assign(array(
   'products' => Product::getNewProducts(intval($cookie->id_lang), intval($p) - 1, intval($n), false, $orderBy, $orderWay),
   'nbProducts' => intval($nbProducts)));


par

$smarty->assign(array(
   'products' => Product::getNewProducts(intval($cookie->id_lang), intval($p) - 1, intval($n), false, $orderBy, "DESC", $orderWay),
   'nbProducts' => intval($nbProducts)));

Link to comment
Share on other sites

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

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