Jump to content
okom3pom

Ordre des produits ( BY FILED xxx , BY price )

Recommended Posts

Bonjour,

Je bloque sur l'ordre de mes produits, je veux mettre des articles en avant et ensuite trier par prix, j'utilise le champ exclu web. 

Donc dans public function getProducts de Category.php 

Ma fin de requête ressemble à ça :

$sql .= ' ORDER BY FIELD(p.online_only,1) DESC, p.price ASC';

Ca fonctionne mais pas tout a fait, car le prix est celui de l'article et pas le prix remisé si il y a une remise.

Le tri par prix avec les remises se passe dans : Tools::orderbyPrice($result, $order_way); 

Le problème c'est qu'une fois la moulinette passée, il me rechange l'ordre sans garder les articles que je veux mettre en avant.

J'ai essayé de modifier la function appelé dans uasort(); mais je n'y arrive pas. 

https://github.com/PrestaShop/PrestaShop/blob/1.6.1.x/classes/Tools.php#L3806

Si quelqu'un a une idée je la prends.

Share this post


Link to post
Share on other sites

Arf mais que je suis con ... 

Il me suffit d'assigner un prix à 0 quand p.online_only = 1, le prix étant défini temporairement. 

 

  • Like 1

Share this post


Link to post
Share on other sites

Je précise également que ma  requête n'est pas bonne/opti car au début j'utilisais un fabriquant donc le ORDER BY FIELD était nécessaire, depuis que j'utilise le champ online_only ce n'est plus nécessaire. 

Voilà si ça peut aider quelqu'un.

 

Share this post


Link to post
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...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More