Afficher le plus petit prix d’une catégorie dans prestashop

Voici une astuce qui à pour simple but, au moyen d’une fonction à ajouter à Prestashop, de récupérer le plus petit prix d’une catégorie.

Très utile pour afficher avec la description de la catégorie, une phrase commerciale du type : « A partir de 49€  »

1. On crée la fonction

Il faut pour cela créer un fichier appelé « Product.php » et le placer dans » override>classes » (Prestashop 1.4)

Voici le contenu de ce fichier :

[php]

class Product extends ProductCore
{
public function getMinPriceCategory($id_category)
{
$id_category = Tools::getValue(‘id_category’);

$sql =’
SELECT `min(price)` as prixbas
FROM `’._DB_PREFIX_.’product` p
WHERE p.id_category_default = "’.$id_category.’"’;
$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow($sql);
return (int)($result[‘prixbas’]);
}

}

[/php]

2.On déclare la variable

Créez un fichier appelé « CategoryController.php » dans le repertoire « override>controllers »

En voici le contenu

[php]

class CategoryController extends CategoryControllerCore
{

self::$smarty->assign(
‘prixbas’ => Product::getMinPriceCategory($id_category) );

}

[/php]

3. Il vous suffit ensuite d’appeler la vaiable dans votre tpl (category.tpl est bien adapté)

[html]{l s=’A partir de ‘}{convertPrice price=$prixbas}[/html]

Voilà vous avez votre appel commercial.

Acheter / Buy

Disponibilité

Du lundi au samedi de 9h à 19h

Conseils

Demandez votre devis conseil

Satisfaction des clients

La satisfaction des client est une priorité pour construire des partenariats durables

Welcome to NdkDesign

KbxBotIcon