Aude5 Posted November 6, 2017 Share Posted November 6, 2017 Bonjour, Malgré avoir écumé plusieurs fois le forum je ne trouve par de solution, je vous lance donc une bouteille à la mer en espérant que quelqu'un la récupère. Mon problème se situe la liste des produits dans la page catégorie. Prestashop 1.6.1.11 (mais c'est un Prestashop qui à "subit" de nombreuses mise à jour un vieux de la vieille ) Pas d’utilisation du module de tri à facette. Mon ordre de tri par défaut est prix croissant avec une pagination de 40. Mes produits sont souvent associés à plusieurs catégories. Mais sur toutes mes pages catégories, les premiers prix affichés de ma page N+1 sont inférieurs aux derniers de la page N il semble que cela soit "un bug" comme évoqué ici http://forge.prestashop.com/browse/PSCFV-6820?jql=text ~ "sort specific prices" j'ai tenté de modifier comme conseille dans ce post mais rien n'y fait.. d’ailleurs j'ai même l'impression que la function du fichier Category.php (classes) function getProducts($id_lang, $p, $n, $order_by = null, $order_way = null, $get_total = false, $active = true, $random = false, $random_number_products = 1, $check_access = true, Context $context = null) n'a aucun impact sur ce tri. NB : Le tri fonctionne parfaitement si j'affiche la totalité des articles sur 1 page. Please hellpppp (c) Lilou Fifth Element Merci à vous Link to comment Share on other sites More sharing options...
Matt K. Posted November 7, 2017 Share Posted November 7, 2017 Bonjour. Tu as des override sur Category.php (méthode getProduct) et / ou CategoryController.php (méthode assignProductList) ? Bon courage! Link to comment Share on other sites More sharing options...
Aude5 Posted November 7, 2017 Author Share Posted November 7, 2017 Merci Matt K. Mais je n'ai pas d'override dans les 2 cas. Link to comment Share on other sites More sharing options...
Aude5 Posted November 7, 2017 Author Share Posted November 7, 2017 Merci okom3pom J'ai appliqué ton override mais cela ne fonctionne pas. Ceci dit ce qui est étrange c'est que j'ai modifié $nb_days_new_product = 20; pour le passer à $nb_days_new_product = 9000; Et aucun effet, alors que normalement je devrais avoir tous mes produits en "nouveau" ? j'ai bien vider les caches (serveurs et navigateur) Link to comment Share on other sites More sharing options...
Aude5 Posted November 7, 2017 Author Share Posted November 7, 2017 (edited) Oui le cache navigateur, le cache presta et le class_index.php (malgré que dans performance je suis en Forcer la compilation à chaque appel ) Je me suis même demandé si il interprétait le code (niveau de la classe ou de son override) , et dès que j’écris n'importe quoi j'ai bien une erreur Etrange non ? j'ai tenté par l'override racine\override\classes\Category.php et meme directement dans \classes\Category.php il y a d'autres endroits ? Encore plus etrange si je renomme classes\Category.php en classes\Categorybidon.php j'ai une erreur Si je supprime de ce même fichier "public function getProducts($id_" ça fonctionne C'est fou non ? Edited November 7, 2017 by Aude5 (see edit history) Link to comment Share on other sites More sharing options...
Aude5 Posted November 8, 2017 Author Share Posted November 8, 2017 voila rien de spécial juste forcé à nb_days_new_product = 90000 (pour essai) <?php class Category extends CategoryCore { /** * Version Prestashop de la méthode 1.6.1.9 * - Pas de vente privée * - Trie par prix sur le total des articles * * Returns category products * * @param int $id_lang Language ID * @param int $p Page number * @param int $n Number of products per page * @param string|null $order_by ORDER BY column * @param string|null $order_way Order way * @param bool $get_total If set to true, returns the total number of results only * @param bool $active If set to true, finds only active products * @param bool $random If true, sets a random filter for returned products * @param int $random_number_products Number of products to return if random is activated * @param bool $check_access If set tot rue, check if the current customer * can see products from this category * @param Context|null $context * * @return array|int|false Products, number of products or false (no access) * @throws PrestaShopDatabaseException */ public function getProducts($id_lang, $p, $n, $order_by = null, $order_way = null, $get_total = false, $active = true, $random = false, $random_number_products = 1, $check_access = true, Context $context = null) { if (!$context) { $context = Context::getContext(); } if ($check_access && !$this->checkAccess($context->customer->id)) { return false; } $front = in_array($context->controller->controller_type, array('front', 'modulefront')); $id_supplier = (int)Tools::getValue('id_supplier'); /** Return only the number of products */ // Okom3pom AND p.`vente_privee` != 1 if ($get_total) { $sql = 'SELECT COUNT(cp.`id_product`) AS total FROM `'._DB_PREFIX_.'product` p '.Shop::addSqlAssociation('product', 'p').' LEFT JOIN `'._DB_PREFIX_.'category_product` cp ON p.`id_product` = cp.`id_product` WHERE cp.`id_category` = '.(int)$this->id.' AND p.`vente_privee` < 1 '.($front ? ' AND product_shop.`visibility` IN ("both", "catalog")' : ''). ($active ? ' AND product_shop.`active` = 1' : ''). ($id_supplier ? 'AND p.id_supplier = '.(int)$id_supplier : ''); return (int)Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue($sql); } if ($p < 1) { $p = 1; } /** Tools::strtolower is a fix for all modules which are now using lowercase values for 'orderBy' parameter */ $order_by = Validate::isOrderBy($order_by) ? Tools::strtolower($order_by) : 'position'; $order_way = Validate::isOrderWay($order_way) ? Tools::strtoupper($order_way) : 'ASC'; $order_by_prefix = false; if ($order_by == 'id_product' || $order_by == 'date_add' || $order_by == 'date_upd') { $order_by_prefix = 'p'; } elseif ($order_by == 'name') { $order_by_prefix = 'pl'; } elseif ($order_by == 'manufacturer' || $order_by == 'manufacturer_name') { $order_by_prefix = 'm'; $order_by = 'name'; } elseif ($order_by == 'position') { $order_by_prefix = 'cp'; } if ($order_by == 'price') { $order_by = 'orderprice'; } $nb_days_new_product = Configuration::get('PS_NB_DAYS_NEW_PRODUCT'); if (!Validate::isUnsignedInt($nb_days_new_product)) { $nb_days_new_product = 90000; } // Okom3pom AND p.`vente_privee` != 1 $sql = 'SELECT p.*, product_shop.*, stock.out_of_stock, IFNULL(stock.quantity, 0) AS quantity'.(Combination::isFeatureActive() ? ', IFNULL(product_attribute_shop.id_product_attribute, 0) AS id_product_attribute, product_attribute_shop.minimal_quantity AS product_attribute_minimal_quantity' : '').', pl.`description`, pl.`description_short`, pl.`available_now`, pl.`available_later`, pl.`link_rewrite`, pl.`meta_description`, pl.`meta_keywords`, pl.`meta_title`, pl.`name`, image_shop.`id_image` id_image, il.`legend` as legend, m.`name` AS manufacturer_name, cl.`name` AS category_default, DATEDIFF(product_shop.`date_add`, DATE_SUB("'.date('Y-m-d').' 00:00:00", INTERVAL '.(int)$nb_days_new_product.' DAY)) > 0 AS new, product_shop.price AS orderprice FROM `'._DB_PREFIX_.'category_product` cp LEFT JOIN `'._DB_PREFIX_.'product` p ON p.`id_product` = cp.`id_product` '.Shop::addSqlAssociation('product', 'p'). (Combination::isFeatureActive() ? ' LEFT JOIN `'._DB_PREFIX_.'product_attribute_shop` product_attribute_shop ON (p.`id_product` = product_attribute_shop.`id_product` AND product_attribute_shop.`default_on` = 1 AND product_attribute_shop.id_shop='.(int)$context->shop->id.')':'').' '.Product::sqlStock('p', 0).' LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (product_shop.`id_category_default` = cl.`id_category` AND cl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('cl').') LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (p.`id_product` = pl.`id_product` AND pl.`id_lang` = '.(int)$id_lang.Shop::addSqlRestrictionOnLang('pl').') LEFT JOIN `'._DB_PREFIX_.'image_shop` image_shop ON (image_shop.`id_product` = p.`id_product` AND image_shop.cover=1 AND image_shop.id_shop='.(int)$context->shop->id.') LEFT JOIN `'._DB_PREFIX_.'image_lang` il ON (image_shop.`id_image` = il.`id_image` AND il.`id_lang` = '.(int)$id_lang.') LEFT JOIN `'._DB_PREFIX_.'manufacturer` m ON m.`id_manufacturer` = p.`id_manufacturer` WHERE product_shop.`id_shop` = '.(int)$context->shop->id.' AND p.`vente_privee` < 1 AND cp.`id_category` = '.(int)$this->id .($active ? ' AND product_shop.`active` = 1' : '') .($front ? ' AND product_shop.`visibility` IN ("both", "catalog")' : '') .($id_supplier ? ' AND p.id_supplier = '.(int)$id_supplier : ''); if ($random === true) { $sql .= ' ORDER BY RAND() LIMIT '.(int)$random_number_products; } else { $sql .= ' ORDER BY '.(!empty($order_by_prefix) ? $order_by_prefix.'.' : '').'`'.bqSQL($order_by).'` '.pSQL($order_way); // Okom3pom // LIMIT '.(((int)$p - 1) * (int)$n).','.(int)$n; // End Okom3pom } $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql, true, false); if (!$result) { return array(); } if ($order_by == 'orderprice') { Tools::orderbyPrice($result, $order_way); } // Okom3pom $result = array_slice($result, (((int)$p - 1) * (int)$n), (int)$n); // End Okom3pom /** Modify SQL result */ return Product::getProductsProperties($id_lang, $result); } } Link to comment Share on other sites More sharing options...
Aude5 Posted November 8, 2017 Author Share Posted November 8, 2017 Merci okom3pom pour tes retours Clairement, j'attendais aussi que cela plante avec "ventre privée". Mais la je sèche je pense que de vais repartir sur une base plus fraîche wamp, sources fichiers, etc.... mais la je cale. Link to comment Share on other sites More sharing options...
Aude5 Posted November 8, 2017 Author Share Posted November 8, 2017 (edited) et bien non, j'avais suspecté cela aussi mais il est bien sur NON Je viens d'appliquer ton code sur une installation toutes fraîche de PS est ça marche, il me reste à trouver pourquoi ça fonctionne pas sur mon projet Edited November 8, 2017 by Aude5 (see edit history) Link to comment Share on other sites More sharing options...
Aude5 Posted November 9, 2017 Author Share Posted November 9, 2017 Merci beaucoup pour ton aide okom3pom Link to comment Share on other sites More sharing options...
Asu34 Posted May 16, 2019 Share Posted May 16, 2019 Bonjour je me permets de déterrer ce topic car j'ai le même problème sur un ps 1.6.1.24 avec la pagination par prix croissant sur les pages category. J'ai tenté passer la valeur de $nb_days_new_product à 90000 en vidant tous les caches mais ça ne résout pas mon problème. Link to comment Share on other sites More sharing options...
Asu34 Posted May 20, 2019 Share Posted May 20, 2019 Oui. Tout lu et ai fait l'override avec $nb_days_new_product = 9999. J'ai même modifié directement cette valeur du fichier ../category.php, vidé les caches, supprimé class_index, désactivé le filtre à facettes (au cas où)... mais rien y fait le tri par prix croissant ne fonctionne pas.... Link to comment Share on other sites More sharing options...
Asu34 Posted May 21, 2019 Share Posted May 21, 2019 Bonjour @okom3pom, Comme Aude5 j'avais voulu tester l'affichage de mes produits en nouveau avec $nb_days_new_product = 9999.... J'ai sinon compris pourquoi je n'avais pas de résultat, je faisais les tests sur ma page "promotions" (car elle a un listing de produit important) mais je n'ai tilté qu'après que ce n'était pas une catégorie... Je confirme donc que l'override fonctionne sur ces dernières. Saurais-tu comment je pourrais en faire de même pour mes pages nouveautés, promotions et meilleurs ventes ? Je te remercie pour ta disponibilité et ces solutions Link to comment Share on other sites More sharing options...
Asu34 Posted May 21, 2019 Share Posted May 21, 2019 Ok merci pour l'info. Par contre pour l'override précédent, en réactivant le module de navigation à facette le problème réapparaît... Link to comment Share on other sites More sharing options...
Asu34 Posted May 21, 2019 Share Posted May 21, 2019 dans blocklayered.php et la function getProductByFilters il y a ces ' LIMIT ' à la fin de la fonction : if (version_compare(_PS_VERSION_, '1.6.1', '>=') === true) { $this->products = Db::getInstance()->executeS(' SELECT p.*, ' . ($alias_where == 'p' ? '' : 'product_shop.*,' ) . ' ' . $alias_where . '.id_category_default, pl.*, image_shop.`id_image` id_image, il.legend, m.name manufacturer_name, ' . (Combination::isFeatureActive() ? 'product_attribute_shop.id_product_attribute id_product_attribute,' : '') . ' DATEDIFF(' . $alias_where . '.`date_add`, DATE_SUB("' . date('Y-m-d') . ' 00:00:00", INTERVAL ' . (int) $nb_day_new_product . ' DAY)) > 0 AS new, stock.out_of_stock, IFNULL(stock.quantity, 0) as quantity' . (Combination::isFeatureActive() ? ', product_attribute_shop.minimal_quantity AS product_attribute_minimal_quantity' : '') . ' FROM ' . _DB_PREFIX_ . 'cat_filter_restriction cp LEFT JOIN `' . _DB_PREFIX_ . 'product` p ON p.`id_product` = cp.`id_product` ' . Shop::addSqlAssociation('product', 'p') . (Combination::isFeatureActive() ? ' LEFT JOIN `' . _DB_PREFIX_ . 'product_attribute_shop` product_attribute_shop ON (p.`id_product` = product_attribute_shop.`id_product` AND product_attribute_shop.`default_on` = 1 AND product_attribute_shop.id_shop=' . (int) $context->shop->id . ')' : '') . ' LEFT JOIN ' . _DB_PREFIX_ . 'product_lang pl ON (pl.id_product = p.id_product' . Shop::addSqlRestrictionOnLang('pl') . ' AND pl.id_lang = ' . (int) $cookie->id_lang . ') LEFT JOIN `' . _DB_PREFIX_ . 'image_shop` image_shop ON (image_shop.`id_product` = p.`id_product` AND image_shop.cover=1 AND image_shop.id_shop=' . (int) $context->shop->id . ') LEFT JOIN `' . _DB_PREFIX_ . 'image_lang` il ON (image_shop.`id_image` = il.`id_image` AND il.`id_lang` = ' . (int) $cookie->id_lang . ') LEFT JOIN ' . _DB_PREFIX_ . 'manufacturer m ON (m.id_manufacturer = p.id_manufacturer) ' . Product::sqlStock('p', 0) . ' WHERE ' . $alias_where . '.`active` = 1 AND ' . $alias_where . '.`visibility` IN ("both", "catalog") ORDER BY ' . Tools::getProductsOrder('by', Tools::getValue('orderby'), true) . ' ' . Tools::getProductsOrder('way', Tools::getValue('orderway')) . ' , cp.id_product' . ' LIMIT ' . (((int) $this->page - 1) * $n . ',' . $n), true, false); } else { $this->products = Db::getInstance()->executeS(' SELECT p.*, ' . ($alias_where == 'p' ? '' : 'product_shop.*,' ) . ' ' . $alias_where . '.id_category_default, pl.*, MAX(image_shop.`id_image`) id_image, il.legend, m.name manufacturer_name, ' . (Combination::isFeatureActive() ? 'MAX(product_attribute_shop.id_product_attribute) id_product_attribute,' : '') . ' DATEDIFF(' . $alias_where . '.`date_add`, DATE_SUB("' . date('Y-m-d') . ' 00:00:00", INTERVAL ' . (int) $nb_day_new_product . ' DAY)) > 0 AS new, stock.out_of_stock, IFNULL(stock.quantity, 0) as quantity' . (Combination::isFeatureActive() ? ', MAX(product_attribute_shop.minimal_quantity) AS product_attribute_minimal_quantity' : '') . ' FROM ' . _DB_PREFIX_ . 'cat_filter_restriction cp LEFT JOIN `' . _DB_PREFIX_ . 'product` p ON p.`id_product` = cp.`id_product` ' . Shop::addSqlAssociation('product', 'p') . (Combination::isFeatureActive() ? 'LEFT JOIN `' . _DB_PREFIX_ . 'product_attribute` pa ON (p.`id_product` = pa.`id_product`) ' . Shop::addSqlAssociation('product_attribute', 'pa', false, 'product_attribute_shop.`default_on` = 1 AND product_attribute_shop.id_shop=' . (int) $context->shop->id) : '') . ' LEFT JOIN ' . _DB_PREFIX_ . 'product_lang pl ON (pl.id_product = p.id_product' . Shop::addSqlRestrictionOnLang('pl') . ' AND pl.id_lang = ' . (int) $cookie->id_lang . ') LEFT JOIN `' . _DB_PREFIX_ . 'image` i ON (i.`id_product` = p.`id_product`)' . Shop::addSqlAssociation('image', 'i', false, 'image_shop.cover=1') . ' LEFT JOIN `' . _DB_PREFIX_ . 'image_lang` il ON (image_shop.`id_image` = il.`id_image` AND il.`id_lang` = ' . (int) $cookie->id_lang . ') LEFT JOIN ' . _DB_PREFIX_ . 'manufacturer m ON (m.id_manufacturer = p.id_manufacturer) ' . Product::sqlStock('p', 0) . ' WHERE ' . $alias_where . '.`active` = 1 AND ' . $alias_where . '.`visibility` IN ("both", "catalog") GROUP BY product_shop.id_product ORDER BY ' . Tools::getProductsOrder('by', Tools::getValue('orderby'), true) . ' ' . Tools::getProductsOrder('way', Tools::getValue('orderway')) . ' , cp.id_product' . ' LIMIT ' . (((int) $this->page - 1) * $n . ',' . $n), true, false); } } if (Tools::getProductsOrder('by', Tools::getValue('orderby'), true) == 'p.price') Tools::orderbyPrice($this->products, Tools::getProductsOrder('way', Tools::getValue('orderway'))); return $this->products; } Est-ce que la modif ne serait pas à faire ici ? Link to comment Share on other sites More sharing options...
Asu34 Posted May 21, 2019 Share Posted May 21, 2019 J'ai vu ça Je sêche sinon un peu. J'ai essayé enlever ces ' LIMIT ' en essayant retourner les résultats en array_slice (me suis inspiré de ta modif précédente) mais je ne dois pas faire ça correctement... Link to comment Share on other sites More sharing options...
Asu34 Posted May 21, 2019 Share Posted May 21, 2019 J'ai je crois réussi ; J'ai supprimé les ' LIMIT ' et retourné le tout en array_slice... Je ne sais pas si c'est super propre, voici mes modif : if (version_compare(_PS_VERSION_, '1.6.1', '>=') === true) { $this->products = Db::getInstance()->executeS(' SELECT p.*, ' . ($alias_where == 'p' ? '' : 'product_shop.*,' ) . ' ' . $alias_where . '.id_category_default, pl.*, image_shop.`id_image` id_image, il.legend, m.name manufacturer_name, ' . (Combination::isFeatureActive() ? 'product_attribute_shop.id_product_attribute id_product_attribute,' : '') . ' DATEDIFF(' . $alias_where . '.`date_add`, DATE_SUB("' . date('Y-m-d') . ' 00:00:00", INTERVAL ' . (int) $nb_day_new_product . ' DAY)) > 0 AS new, stock.out_of_stock, IFNULL(stock.quantity, 0) as quantity' . (Combination::isFeatureActive() ? ', product_attribute_shop.minimal_quantity AS product_attribute_minimal_quantity' : '') . ' FROM ' . _DB_PREFIX_ . 'cat_filter_restriction cp LEFT JOIN `' . _DB_PREFIX_ . 'product` p ON p.`id_product` = cp.`id_product` ' . Shop::addSqlAssociation('product', 'p') . (Combination::isFeatureActive() ? ' LEFT JOIN `' . _DB_PREFIX_ . 'product_attribute_shop` product_attribute_shop ON (p.`id_product` = product_attribute_shop.`id_product` AND product_attribute_shop.`default_on` = 1 AND product_attribute_shop.id_shop=' . (int) $context->shop->id . ')' : '') . ' LEFT JOIN ' . _DB_PREFIX_ . 'product_lang pl ON (pl.id_product = p.id_product' . Shop::addSqlRestrictionOnLang('pl') . ' AND pl.id_lang = ' . (int) $cookie->id_lang . ') LEFT JOIN `' . _DB_PREFIX_ . 'image_shop` image_shop ON (image_shop.`id_product` = p.`id_product` AND image_shop.cover=1 AND image_shop.id_shop=' . (int) $context->shop->id . ') LEFT JOIN `' . _DB_PREFIX_ . 'image_lang` il ON (image_shop.`id_image` = il.`id_image` AND il.`id_lang` = ' . (int) $cookie->id_lang . ') LEFT JOIN ' . _DB_PREFIX_ . 'manufacturer m ON (m.id_manufacturer = p.id_manufacturer) ' . Product::sqlStock('p', 0) . ' WHERE ' . $alias_where . '.`active` = 1 AND ' . $alias_where . '.`visibility` IN ("both", "catalog") ORDER BY ' . Tools::getProductsOrder('by', Tools::getValue('orderby'), true) . ' ' . Tools::getProductsOrder('way', Tools::getValue('orderway')) . ' , cp.id_product', true, false); } else { $this->products = Db::getInstance()->executeS(' SELECT p.*, ' . ($alias_where == 'p' ? '' : 'product_shop.*,' ) . ' ' . $alias_where . '.id_category_default, pl.*, MAX(image_shop.`id_image`) id_image, il.legend, m.name manufacturer_name, ' . (Combination::isFeatureActive() ? 'MAX(product_attribute_shop.id_product_attribute) id_product_attribute,' : '') . ' DATEDIFF(' . $alias_where . '.`date_add`, DATE_SUB("' . date('Y-m-d') . ' 00:00:00", INTERVAL ' . (int) $nb_day_new_product . ' DAY)) > 0 AS new, stock.out_of_stock, IFNULL(stock.quantity, 0) as quantity' . (Combination::isFeatureActive() ? ', MAX(product_attribute_shop.minimal_quantity) AS product_attribute_minimal_quantity' : '') . ' FROM ' . _DB_PREFIX_ . 'cat_filter_restriction cp LEFT JOIN `' . _DB_PREFIX_ . 'product` p ON p.`id_product` = cp.`id_product` ' . Shop::addSqlAssociation('product', 'p') . (Combination::isFeatureActive() ? 'LEFT JOIN `' . _DB_PREFIX_ . 'product_attribute` pa ON (p.`id_product` = pa.`id_product`) ' . Shop::addSqlAssociation('product_attribute', 'pa', false, 'product_attribute_shop.`default_on` = 1 AND product_attribute_shop.id_shop=' . (int) $context->shop->id) : '') . ' LEFT JOIN ' . _DB_PREFIX_ . 'product_lang pl ON (pl.id_product = p.id_product' . Shop::addSqlRestrictionOnLang('pl') . ' AND pl.id_lang = ' . (int) $cookie->id_lang . ') LEFT JOIN `' . _DB_PREFIX_ . 'image` i ON (i.`id_product` = p.`id_product`)' . Shop::addSqlAssociation('image', 'i', false, 'image_shop.cover=1') . ' LEFT JOIN `' . _DB_PREFIX_ . 'image_lang` il ON (image_shop.`id_image` = il.`id_image` AND il.`id_lang` = ' . (int) $cookie->id_lang . ') LEFT JOIN ' . _DB_PREFIX_ . 'manufacturer m ON (m.id_manufacturer = p.id_manufacturer) ' . Product::sqlStock('p', 0) . ' WHERE ' . $alias_where . '.`active` = 1 AND ' . $alias_where . '.`visibility` IN ("both", "catalog") GROUP BY product_shop.id_product ORDER BY ' . Tools::getProductsOrder('by', Tools::getValue('orderby'), true) . ' ' . Tools::getProductsOrder('way', Tools::getValue('orderway')) . ' , cp.id_product', true, false); } } if (Tools::getProductsOrder('by', Tools::getValue('orderby'), true) == 'p.price') Tools::orderbyPrice($this->products, Tools::getProductsOrder('way', Tools::getValue('orderway'))); $result = array_slice($this->products, (((int) $this->page - 1) * $n), $n); return $result; } Link to comment Share on other sites More sharing options...
Asu34 Posted May 21, 2019 Share Posted May 21, 2019 Par contre je n'arrive pas à mettre la modification en override, j'ai ce warning : "Undefined property: BlockLayeredOverride::$page in .local\override\modules\blocklayered\blocklayered.php pour la ligne : $result = array_slice($this->products, (((int) $this->page - 1) * $n), $n); Une idée ? Link to comment Share on other sites More sharing options...
Asu34 Posted May 21, 2019 Share Posted May 21, 2019 Par contre je n'arrive pas à mettre la modification en override, j'ai ce warning : "Undefined property: BlockLayeredOverride::$page in .local\override\modules\blocklayered\blocklayered.php pour la ligne : $result = array_slice($this->products, (((int) $this->page - 1) * $n), $n); Une idée ? À priori ça viendrait des variables private $products; private $nbr_products; private $page = 1; En les passant en public l'override fonctionne... Quand je les déclare dans mon override ça ne marche plus... Est-ce qu'il y a une solution afin d'utiliser ces variables dans mon override ? Merci 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