easy-it Posted May 17, 2018 Share Posted May 17, 2018 Bonjour, Je souhaite modifier le comportement de tri pour les listes de produits dans les pages Catégories. Tri par prix : je souhaite ne pas afficher les produits indisponibles (stock=0) Tri En Stock : en fait c'est un tri par quantité décroissante. Je voudrais faire la même chose : supprimer les produits indisponibles de l'affichage. J'ai fait un override de la classe Category.php et j'ai modifié la fonction getProducts (clause ajoutée dans le WHERE = AND stock.quantity > 0). Mais cela ne change rien. Comme je ne fais pas des override tous les jours, y a t il pas d'autres actions à faire ? Bien sur j'ai purgé les caches divers et variés. Merci de votre aide. Link to comment Share on other sites More sharing options...
easy-it Posted May 17, 2018 Author Share Posted May 17, 2018 J'en suis arrivé à cette modification car dans le contrôleur de l'objet Category il y a ceci dans la fonction public function assignProductList() // The hook was not executed, standard working if (!$hook_executed) { $this->context->smarty->assign('categoryNameComplement', ''); $this->nbProducts = $this->category->getProducts(null, null, null, $this->orderBy, $this->orderWay, true); $this->pagination((int)$this->nbProducts); // Pagination must be call after "getProducts" $this->cat_products = $this->category->getProducts($this->context->language->id, (int)$this->p, (int)$this->n, $this->orderBy, $this->orderWay); } Me suis je fourvoyé ? Link to comment Share on other sites More sharing options...
easy-it Posted May 17, 2018 Author Share Posted May 17, 2018 Mon fichier class_index.php dans /cache est bien regénéré. Et ma classe Category pointe bien sur le path 'Category' => array ( 'path' => 'override/classes/Category.php', 'type' => 'class', 'override' => false, ), Par contre, le dernier paramètre ('override'=> false) me chiffonne ... Link to comment Share on other sites More sharing options...
easy-it Posted May 17, 2018 Author Share Posted May 17, 2018 'CategoryCore' => array ( 'path' => 'classes/Category.php', 'type' => 'class', 'override' => false, ), Et cà c'est pour la classe origine ... Link to comment Share on other sites More sharing options...
easy-it Posted May 17, 2018 Author Share Posted May 17, 2018 (edited) J'ai oublié de dire que je suis en version 1.6.1.16 Edited May 17, 2018 by midi-vin (see edit history) 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