Jump to content
Sign in to follow this  
lehangart

[Résolu] Retour sur le bug de pagination

Recommended Posts

Details:
Sur la page nouveaux produits. Le bloc Pagination n’affiche pas le nombre correct de pages.
pour corriger ce bug:

dans new-product.php chercher ligne 8:


$nbProducts = intval(Product::getNewProducts(intval($cookie->id_lang), NULL,NULL, true));
remplacer par:
$nbProducts = intval(Product::getNewProducts(intval($cookie->id_lang), intval($p) - 1, intval($n), false));

—————————————————————————————

Cette correction ne fonctionne pas;
Y aurait il quelqu'un qui arrive à debugger cette pagination qui ne se met pas à jour.
C'est le cas pour les nouveaux produits mais aussi pour les promotions qui s'arretent...
Ces produits sont toujours comptabilisés dans la pagination!
Merci à celui qui arrivera à touver la solution;

Share this post


Link to post
Share on other sites

j'ai exactement le même problème...

il faut mettre cela à la ligne 8 :

$nbProducts = intval(Product::getNewProducts(intval($cookie->id_lang), intval($p) - 1, intval($n), false)); 

Share this post


Link to post
Share on other sites

Hélas c'est de cette correction dont je parlais: elle ne marche pas.
Quand on remplace cette ligne de code la pagination n'apparait plus (plus qu'une seule page affichée).

Share this post


Link to post
Share on other sites

effectivement c'est une correction expéditive ;), maintenant il n'y a plus de pagination du tout dans les nouveautés :-S

Share this post


Link to post
Share on other sites

Ce bug n'a toujours pas été résolu... Il suffirait pourtant de bien renseigner cette foutue variable "$nbProducts" dans le new-product.php
Y a pas quelqu'un qui s'y connait un petit peu et qui voudrait bien se pencher sur ce problème!

Share this post


Link to post
Share on other sites

voici le fichier newproducts.php qui est sur le svn en ce moment:

<?php

include(dirname(__FILE__).'/config/config.inc.php');
include(dirname(__FILE__).'/header.php');

include(dirname(__FILE__).'/product-sort.php');

$nbProducts = intval(Product::getNewProducts(intval($cookie->id_lang), isset($p) ? intval($p) - 1 : NULL, isset($n) ? intval($n) : NULL, true));
include(dirname(__FILE__).'/pagination.php');

$smarty->assign(array(
   'products' => Product::getNewProducts(intval($cookie->id_lang), intval($p) - 1, intval($n), false, $orderBy, $orderWay),
   'nbProducts' => intval($nbProducts)));

$smarty->display(_PS_THEME_DIR_.'new-products.tpl');

include(dirname(__FILE__).'/footer.php');

?>





Bon ca marche pas avec la v1.1, la deuxieme page de produits affiche " pas de produits"

Share this post


Link to post
Share on other sites

Ma correction n'était pas bonne en effet.

Je viens de proposer une nouvelle correction.

voir: http://www.prestashop.com/bug_tracker/view/1155/

Attention, les ' ne sont pas bons car je n'ai pas pu mettre le code entre des balises < code >

voici la correction entre < code > de la fonction getNewProducts (ligne 903)

classes/Product.php

if ($count)
       {
           $result = Db::getInstance()->getRow('
           SELECT COUNT(`id_product`) AS nb
           FROM `'._DB_PREFIX_.'product`
           WHERE `active` = 1
           AND DATEDIFF(`date_add`, DATE_SUB(NOW(), INTERVAL '.(Validate::isUnsignedInt(Configuration::get('PS_NB_DAYS_NEW_PRODUCT')) ? Configuration::get('PS_NB_DAYS_NEW_PRODUCT') : 20).' DAY)) > 0');
           return intval($result['nb']);
       }



remettre le fichier original de new-products.php ou corriger:

$nbProducts = intval(Product::getNewProducts(intval($cookie->id_lang), NULL, NULL, true));

Share this post


Link to post
Share on other sites

Merki kink ! :cheese:

Saurai tu comment afficher par defaut les produits nouveaux par date d'ajout, le premier de la liste etant le dernier ajouté.

Actuellement le classement est alphabetique, ce qui n'est pas tres logique.

Share this post


Link to post
Share on other sites

oui ca marche, le seul truc c'est que cela met toute la boutique sous le meme mode...

Share this post


Link to post
Share on other sites

Attention, il ne faut le faire que pour la fonction getNewProducts (vers la ligne 903)

comme je l'avais mentionné dans le bug_Tracker

je vous donne le fichier corrigé si vous voulez.

Product.php

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
Sign in to follow this  

×
×
  • Create New...

Important Information

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