Guillaume_KS Posted August 23, 2022 Share Posted August 23, 2022 (edited) Hello tout le monde ! J'aurais besoin de votre assistance sur un point ! Je suis en train de créer un module qui s'applique sur la fiche produit, qui affiche donc les produits avec leurs différentes déclinaisons, cela inclus donc plusieurs prix. Je souhaite trouver la fonction native (qui existe surement dans la classe Product, mais après avoir fait le tour des 237 fonctions de la classe, je ne l'ai pas trouvé) qui permet de récupérer tous les prix des déclinaisons d'un produit (avec le prix du produit lui-même bien sur). Mon problème c'est que toutes les solutions que j'ai trouvé, soit ne sorte que le prix de la déclinaison en question, comme s'il s'agissait d'un produit à part entière, alors que je voudrais un tableau avec tous les prix d'un produit et de ces déclinaisons. Je tourne beaucoup autour du pot, exemple : getPriceStatic ne permet par exemple que d'avoir le prix de la déclinaisons courante getProductAttribute permet de voir toutes les déclinaisons mais pas leurs prix Alors qu'il me faudrait une combinaison de ces deux méthodes finalement, est ce que quelqu'un aurait une idée ? (j'espère avoir été assez clair) Edited August 24, 2022 by Guillaume_KS (see edit history) Link to comment Share on other sites More sharing options...
Mediacom87 Posted August 23, 2022 Share Posted August 23, 2022 il y a une heure, Guillaume_KS a dit : getPriceStatic ne permet par exemple que d'avoir le prix de la déclinaisons courante Permet d’avoir le prix de la déclinaison que l’on souhaite donc on doit boucler pour toutes les déclinaisons afin d’avoir tous les prix. c’est lourd. Link to comment Share on other sites More sharing options...
coeos.pro Posted August 23, 2022 Share Posted August 23, 2022 Il y a 3 heures, Guillaume_KS a dit : qui permet de récupérer tous les prix des déclinaisons d'un produit (avec le prix du produit lui-même bien sur) le produit en lui même "n'existe pas", c'est la déclinaison par défaut; oui comme le dit Mediacom87 il faut faire une boucle. Link to comment Share on other sites More sharing options...
Guillaume_KS Posted August 24, 2022 Author Share Posted August 24, 2022 (edited) Je vais boucler Edited August 24, 2022 by Guillaume_KS (see edit history) Link to comment Share on other sites More sharing options...
coeos.pro Posted August 24, 2022 Share Posted August 24, 2022 Utilise getProductAttributesIds : https://github.com/PrestaShop/PrestaShop/blob/develop/classes/Product.php#L7299 Link to comment Share on other sites More sharing options...
Guillaume_KS Posted August 24, 2022 Author Share Posted August 24, 2022 En bouclant grâce à vos conseils, j'ai pu obtenir la valeur la plus basse parmi les déclinaisons d'un produit ! for($i = 0; $i < $j; $i++) { $allPrice[] = Product::getPriceStatic($id_product, null, $test[$i]['id_product_attribute']); } dump($allPrice); //AFFICHE LA VALEUR LA PLUS BASSE $lowerPrice = min($allPrice); dump($lowerPrice); Mais un problème en appelle un autre comme vous le savez lol, parce que j'aimerais pouvoir récupérer l'id_attribut qui correspond à $lowerPrice, mais dans le tableau que j'obtiens il ne reste plus que le prix, et plus les paramètres nécessaires qui me permettraient de retrouver mon id_attribut avec la fonction getProductAttributesIds.... Link to comment Share on other sites More sharing options...
Mediacom87 Posted August 24, 2022 Share Posted August 24, 2022 $lowerPrice = 0; for($i = 0; $i < $j; $i++) { $price = Product::getPriceStatic($id_product, null, $test[$i]['id_product_attribute']); if ($lowerPrice == 0 || $price < $lowerPrice) { $lowerPrice = $price; $id_product_attribute_mini = $test[$i]['id_product_attribute']; } } Link to comment Share on other sites More sharing options...
Guillaume_KS Posted August 24, 2022 Author Share Posted August 24, 2022 Merci pour votre aide ! Cette partie est résolu, même s'il me reste un point important à voir, mais je vais ouvrir un autre topic car la question première est résolu ! Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now