Jump to content

chronologie des nouveautés


Recommended Posts

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

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

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

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

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

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
×
×
  • Create New...