liswann Posted March 20, 2012 Share Posted March 20, 2012 Bonjour, Sur le module "new products", les produits apparaissent au fur et mesure de leur insertion. Lorsque l'on clique sur le titre "nouveautés", l'apparition dans la colonne centrale ne respecte pas l'ordre d'insertion, j'ai donc les produits les plus anciens en premier. Je dois probablement modifier un fichier php pour que les derniers produits soient en 1er sur la liste. Merci de votre aide Cordialement Liswann Link to comment Share on other sites More sharing options...
Broceliande Posted March 21, 2012 Share Posted March 21, 2012 Hello, Une petite surcharge de rien du tout et le tour est joué (en principe ... ) : Tu crées un fichier nommé NewProductsController.php vide dans /override/controllers , et dedans tu colles juste ça : <?php class NewProductsController extends NewProductsControllerCore { public function __construct() { $this->orderBy='date_add'; $this->orderWay='desc'; parent::__construct(); } } ?> Link to comment Share on other sites More sharing options...
liswann Posted March 22, 2012 Author Share Posted March 22, 2012 Bonsoir et merci pour votre réponse rapide. Je viens de tester en local et rien ne bouge, j'ai pourtant fait exactement ce qui est écrit. pourriez-vous m'éclairer ? Cordialement Muriel Link to comment Share on other sites More sharing options...
Broceliande Posted March 22, 2012 Share Posted March 22, 2012 Bonsoir et merci pour votre réponse rapide. Je viens de tester en local et rien ne bouge, j'ai pourtant fait exactement ce qui est écrit. pourriez-vous m'éclairer ? Cordialement Muriel Effectivement j'ai carrément zappé la valeur de ces champs par défaut.... remplace simplement le tout dans le fichier par : <?php class NewProductsController extends NewProductsControllerCore { public function productSort() { if (!self::$initialized) $this->init(); $stock_management = (int)(Configuration::get('PS_STOCK_MANAGEMENT')) ? true : false; // no display quantity order if stock management disabled $this->orderBy = Tools::getProductsOrder('by', Tools::getValue('orderby','date_add')); $this->orderWay = Tools::getProductsOrder('way', Tools::getValue('orderway','asc')); if($this->orderBy=='position') { $this->orderBy = 'date_add'; $this->orderWay = 'desc'; } self::$smarty->assign(array( 'orderby' => $this->orderBy, 'orderway' => $this->orderWay, 'orderbydefault' => Tools::getProductsOrder('by'), 'orderwayposition' => Tools::getProductsOrder('way'), // Deprecated: orderwayposition 'orderwaydefault' => Tools::getProductsOrder('way'), 'stock_management' => (int)($stock_management))); } } ?> Ceci marche et je viens de le tester, contrairement au code précédent . Link to comment Share on other sites More sharing options...
liswann Posted March 23, 2012 Author Share Posted March 23, 2012 Merci infiniment pour votre réponse. J'ai juste changé cette ligne : $this->orderWay = Tools::getProductsOrder('way', Tools::getValue('orderway','asc')); par $this->orderWay = Tools::getProductsOrder('way', Tools::getValue('orderway','desc')); et ça marche ! Bonne continuation Cordialement Muriel Link to comment Share on other sites More sharing options...
Broceliande Posted March 23, 2012 Share Posted March 23, 2012 Merci infiniment pour votre réponse. J'ai juste changé cette ligne : $this->orderWay = Tools::getProductsOrder('way', Tools::getValue('orderway','asc')); par $this->orderWay = Tools::getProductsOrder('way', Tools::getValue('orderway','desc')); et ça marche ! Bonne continuation Cordialement Muriel arf j'avais mis asc ... 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