Comment afficher aléatoirement les produits phares de Prestashop 1.5.6.2 ?

Petit tutoriel Prestashop 1.5.6.2 qui explique comment afficher de façon aléatoire des produits du bloc produits phares

Logo de Prestashop sur fond blanc

Article publié le 07/10/2014 par Thomas dans la catégorie Développement web et logiciel. Cet article a été modifé le 09/04/2018.

Nous allons voir dans ce tutoriel comment afficher de manière aléatoire des produits phares sur une boutique Prestashop version 1.5.6.2. Pour information, Prestashop est un système de gestion de contenu Open Source permettant de créer une boutique en ligne.

Le module produits phares de Prestashop est un module natif qui permet d’afficher des produits affectés à la catégorie accueil. Le bloc produits phares se situe donc en principe sur la page d’accueil de la boutique. Il existe deux méthodes pour pouvoir afficher les produits phares aléatoirement : en installant un module tiers ou en modifiant le code source du module installé par défaut dans Prestashop. Nous allons voir la deuxième méthode, en modifiant directement le code source (script PHP).

Modification du script PHP

Le module produits aléatoires se nomme homefeatured et se situe dans le répertoire modules :

modules/homefeatured

 

Il faut ouvrir et éditer un seul fichier du module pour arriver à nos fins, c’est le fichier homefeatured.php :

modules/homefeatured/homefeatured.php

 

Comme vous pouvez le constater, le fichier PHP contient une classe HomeFeatured qui hérite de la classe Module. Nous allons modifier deux lignes de code dans une méthode de classe qui a pour fonction de récupérer les produits et de les afficher dans le template situé sur la page d’accueil (bloc produits phares). La méthode de classe en question est la méthode hookDisplayHome(). Rendez-vous donc dans la méthode de classe hookDisplayHome à la ligne 123 :

$products = $category->getProducts((int)Context::getContext()->language->id, 1, ($nb ? $nb : 8));

 

$products contient les produits phares (normalement des objets) qui ont été retournés par la méthode getProducts() de l’objet $category. Nous allons ajouter des paramètres à cette méthode comme ceci :

$products = $category->getProducts((int)Context::getContext()->language->id, 1, ($nb ? $nb : 8), NULL, NULL, false, true, true, ($nb ? $nb : 8), ‘position’);

 

Si vous voulez en savoir plus sur les paramètres de la méthode getProducts() de la classe Category, rendez-vous à la ligne 539 du fichier :

classes/Category.php

 

Nous allons ensuite modifier la ligne 131 :

return $this->display(__FILE__, ‘homefeatured.tpl’, $this->getCacheId(‘homefeatured’));

 

Ce code retourne le template homefeatured.tpl grâce à la méthode display() de la classe HomeFeatured. Pour pouvoir afficher les produits phares à chaque rafraichissement de la page accueil, nous allons supprimer le deuxième paramètre de la méthode comme ceci :

return $this->display(__FILE__, ‘homefeatured.tpl’);

 

Voilà, en modifiant ces deux lignes (123 et 131) de code, les produits phares devraient s’afficher de manière aléatoire à chaque rafraichissement de la page accueil. N’oubliez pas que pour afficher les produits phares, vous devez affecter les produits à la catégorie accueil dans le back office de Prestashop.

Pages en lien avec l'article 

Vendez vos produits ou services sur le web, avec un site e-commerce, pour accroître votre clientèle et votre chiffre d'affaire.

Partager sur les réseaux sociaux

Lire des commentaires

Information

Aucun commentaire enregistré dans la base de données.

Poster un commentaire

Articles similaires

Logo des circuits imprimés en matériel libre Arduino

Comment faire clignoter une LED avec arduino ?

Article posté le 28/01/2018 par Thomas dans la catégorie Fun en informatique et électronique

Nous allons voir dans ce tutoriel comment faire clignoter une LED avec un circuit imprimé Arduino Uno et quelques composants. Il s'agit d'un deuxième montage pour toute personne souhaitant découvrir l'électronique (...)

Logo de l'éditeur Bluefish représentant un poisson bleu

Bluefish, un super éditeur pour vos pages web

Article posté le 02/12/2014 par Thomas dans la catégorie Tests et dossiers de produits high-tech

Le choix d'un éditeur est primordial qu'on soit un webmestre ou un développeur. On a besoin de modifier rapidement les pages et de trouver les erreurs. De nombreux éditeurs sont conçus spécifiquement pour la modification de pages (...)

Logo de l'application web ERP CRM. Caractères bleus sur fond blanc.

Quelle application Open Source et gratuite pour la gestion d'une entreprise de petite taille ?

Article posté le 21/05/2013 par Thomas dans la catégorie Tests et dossiers de produits high-tech

Au début de mon activité de développeur web freelance, il a fallu que je cherche des logiciels pour la gestion des factures, des propales, du portefeuille clients et prospects, des commandes, des projets, des mailing, de la comptabilité... Bref, beaucoup trop de (...)

Logo des circuits imprimés en matériel libre Arduin

Comment allumer une LED en continu avec Arduino ?

Article posté le 16/01/2018 par Thomas dans la catégorie Fun en informatique et électronique

Nous allons voir dans ce tutoriel comment allumer une LED en continu avec un circuit imprimé Arduino Uno et quelques composants. Il s'agit d'un premier montage pour toute personne souhaitant découvrir l'électronique (...)