Jump to content

Création module de filtre


Recommended Posts

Bonjour,

 

je suis en train de créer un module qui, un peu comme le module de base "fabricant", permet de filtrer les produits selon une caractéristique d'un produit. En l’occurrence, je souhaiterai trier mes produits en fonction qu'ils soient "verts" ou pas (respectueux de l’environnement).

 

J'ai déjà créer le fichier PHP qui trie les produits en fonctions de ce critère (j'ai ajouté une colonne à la table product et product_shop) et qui retourne le résultat de la requête. Seulement, je ne comprends pas comment afficher les produits "verts" sur le centre de mon site, un peu comme le module nouveaux produits où quand on appui sur le bouton "afficher les nouveaux produits" ces produits sont affichés.

 

Mon fichier filtre.php :

<?php
class filtre extends Module
{
	function __construct()
	{
		$this->name = 'filtre';
		$this->tab = 'Mes modules';
		$this->version = 1;
		$this->displayName = $this->l('filtre');
		$this->description = $this->l('Description de mon super module');
 
		parent::__construct();
	}
	function install()
	{
		if (parent::install() == false OR !$this->registerHook('leftColumn') && !$this->registerHook('displayHomeTabContent'))
  return false;
return true;
	}
 
	public function uninstall()
 	{
 	 	if (!parent::uninstall())
 	 		return false;
 	}
	public function hookdisplayLeftColumn($params)
	{
		global $smarty, $cookie, $link;
		$resultat = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS('SELECT p.id_product, cl.name
			FROM `ps_product` p
			LEFT JOIN `ps_category_lang` cl ON (p.`id_category_default` = cl.`id_category` )
			WHERE p.produit_vert=1');
                 $this->context->smarty->assign(array(
                 'produit' => $resultat));
		return $this->display(__FILE__, 'filtre.tpl');
	}
}
	?>

et mon fichier TPL :

<div id="filtre_block_left" class="block">
	<ul>
	<!--{DEBUG} -->
	{foreach from=$produit item=$produits}
	<li>{$produit.0.name}</li></br>
	{/foreach}
	
		<form action="" method="post">
			<p>
				<select id="produit_list" onchange="autoUrl('produit_list', '');">
					<option value="0">{l s='Produit vert' mod='blockmanufacturer'}</option>
					
				</select>
			</p>
		</form>
	</ul>
</div>

Quelqu'un aurait il des pistes ?

 

Merci.

Link to comment
Share on other sites

  • 1 year later...

Bonjour,

 

Je suis désolée de vous importuner avec cela, mais pourriez-vous m'indiquer comment vous avez fini par faire pour pouvoir trier les produits verts ?

J'ai besoin de le faire sur ma boutique et malheureusement aussi, beaucoup de messages restés sans réponse sur ce forum :(

Bonne soirée

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