Jump to content

Afficher un produit d'une catégorie en particulier sur index


Recommended Posts

Bonjour à tous,

 

Voilà ce que je cherche à faire :

c'est un peu le même principe que le module "Produits Phares", sauf que j'aimerais afficher sur mon accueil le dernier produit de la catégorie 3 (par exemple).

 

Je pensais qu'en dupliquant le module, en bidouillant 2-3 trucs et en lui ajoutant l'id de ma catégorie ça marcherait, mais hélas non (aucun produit récupéré)...

 

Y'a-t-il un module, ou autre (je peux mettre les mains dans le cambouis j'ai quelques notions) qui me permette de récupérer le dernier produit d'une catégorie en particulier et de l'afficher sur l'index ?

 

Comment puis je faire svp ?

 

Pour info voici mon homebio.php :

 

<?php
class HomeBio extends Module
{
private $_html = '';
private $_postErrors = array();
function __construct()
{
 $this->name = 'homebio';
 $this->tab = 'modules_decentralise';
 $this->version = '0.1';
 $this->author = 'Marion';
 $this->need_instance = 0;
 parent::__construct();

 $this->displayName = $this->l('Produits categorie Bio');
 $this->description = $this->l('Affiche produit categorie bio dans accueil');
}
function install()
{
 if (!parent::install() OR !$this->registerHook('home'))
  return false;
 return true;
}
function hookHome($params)
{
 global $smarty;
 $category = new Category(53);
 $products = $category->getProducts((int)($params['cookie']->id_lang), 53, 1);
 $smarty->assign(array(
 'products' => $products,
 'homeSize' => Image::getSize('home')));
 return $this->display(__FILE__, 'homebio.tpl');
}
}

 

Pour être plus explicite, je joins une image de ma maquette d'accueil.

Comme vous le voyez, je cherche à montrer un produit de la catégorie "Bio" sur mon index (et le dernier créé en l’occurrence).

post-276204-0-95810600-1320699007_thumb.png

Link to comment
Share on other sites

Sachant que dans mon code 53 est l'id de ma catégorie...

 

Je viens de trouver qu'en mettant

$products = $category->getProducts((int)($params['cookie']->id_lang), 1, 1);

au lieu de

$products = $category->getProducts((int)($params['cookie']->id_lang), 53, 1);

 

ça me récupère un produit de la catégorie. Mais par contre c'est toujours le même, ce n'est pas le dernier créé...

Link to comment
Share on other sites

Pour un affichage aléatoire:

 

$nb = 1; // nb de produits affichés

 

$products = $category->getProducts((int)($params['cookie']->id_lang), 1, ($nb ? $nb : 10), NULL, NULL, false, true, true, ($nb ? $nb : 10));

 

 

Un produit de la catégorie est affiché aléatoirement.

Par contre, ce n'est pas le dernier....

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...