Centre de Notifications — Guide complet
Installer, configurer et exploiter la cloche de notifications front-office : nouveaux produits automatiques, codes promo, badge non-lu, planification et ciblage pour PrestaShop 8 et 9.
Présentation
Le module Centre de Notifications (dfnotificationcenter) ajoute une cloche de notifications dans l’en-tête de votre boutique, juste à côté du panier et de « Mon compte ». Un badge rouge signale les notifications non lues. Vos nouveaux produits y apparaissent automatiquement et vous pouvez y pousser vos codes promo, que le client copie en un clic. Le tout est multilingue, multiboutique et compatible PrestaShop 8 et 9.
La cloche reprend un réflexe que vos visiteurs ont déjà sur les réseaux sociaux : un point rouge attire l’œil et invite au clic, sans pop-up intrusif ni bannière qui gêne la navigation.
Compatibilité
- PrestaShop 8.0 à 9.x
- Mono-boutique et multiboutique
- PHP 7.2 à 8.x
- Thème Classic et thèmes personnalisés
- Interface livrée en français, anglais, espagnol, allemand et italien
- Aucune dépendance (ni Composer ni framework)
Installation
- Dans le back-office, ouvrez Modules > Gestionnaire de modules.
- Cliquez sur Installer un module puis sélectionnez le fichier
dfnotificationcenter.zip. - Une fois installé, cliquez sur Configurer.
À l’installation, le module crée ses trois tables (notifications, traductions, état de lecture), enregistre ses hooks (cloche dans l’en-tête, ressources front, enregistrement produit, création de bon de réduction) et ajoute l’onglet back-office Notification Center pour gérer les notifications.
Réglages globaux
Depuis la page Configurer du module, vous réglez le comportement général :
- Nouveaux produits automatiques : crée une notification à chaque enregistrement d’un produit.
- Produits actifs uniquement : ne génère la notification que pour les produits actifs et visibles.
- Promo auto sur bon de réduction : crée automatiquement une notification promo dès qu’un bon de réduction avec code est créé.
- Durée de vie des notifications produit (jours) : expiration automatique après N jours.
0= jamais. - Intervalle de rafraîchissement (secondes) : actualisation du badge en arrière-plan.
0= désactivé. - Nombre maximum d’éléments dans le panneau : nombre de notifications affichées dans la cloche.
- Couleur du badge et Couleur de la cloche (vide = couleur du thème).
- Son et Animation de la cloche à l’arrivée d’une nouvelle notification.
Gérer les notifications
L’onglet Notification Center (accessible aussi via le bouton « Ouvrir le Notification Center » sur la page de configuration) liste vos notifications avec leur type, priorité, nombre de vues et de clics, et leur état actif. Cliquez sur Ajouter une notification pour en créer une.
Champs d’une notification
- Type : Nouveau produit, Code promo, News ou Information. Chaque type a son icône et sa couleur côté client.
- Titre (multilingue, requis) et Message (multilingue, éditeur de texte).
- Libellé du bouton (multilingue) et Lien (URL de destination).
- ID produit : pour le type Nouveau produit. L’image et le lien sont alors résolus automatiquement.
- Code promo : pour le type Code promo. Affiché côté client avec un bouton Copier.
- Image : visuel optionnel (ignoré pour le type produit, qui utilise l’image de couverture).
- Groupe cible : « Tous les clients » ou un groupe précis.
- Priorité : plus la valeur est élevée, plus la notification remonte en haut.
- Date de début et Date de fin : laissez vide pour « visible immédiatement » et « n’expire jamais ».
- Actif : interrupteur d’activation.
La planification et le ciblage se combinent : vous pouvez par exemple programmer une notification promo visible uniquement par le groupe « Clients fidèles », du 1er au 15 du mois, avec une priorité élevée pour qu’elle apparaisse en tête.
Nouveaux produits automatiques
Quand l’option est activée, le module écoute l’enregistrement des produits (hook actionProductSave) et crée une notification de type produit avec le nom, l’image de couverture et le lien de la fiche. Un même produit n’est notifié qu’une seule fois (dédoublonnage par identifiant produit).
L’image et le lien d’une notification produit sont recalculés à l’affichage. Même si vous modifiez le produit ou changez sa photo plus tard, la notification reste correcte. Si le produit devient inactif ou est supprimé, la notification cesse simplement d’apparaître.
Codes promo
Créez une notification de type Code promo, saisissez le code de votre bon de réduction, et il s’affiche côté client dans une puce avec un bouton Copier. Un clic, le code est dans le presse-papiers, le client retourne au panier l’appliquer.
Si l’option Promo auto sur bon de réduction est activée, une notification promo est créée automatiquement à chaque création d’un bon de réduction comportant un code (hook actionObjectCartRuleAddAfter), en reprenant sa date de fin de validité.
Fonctionnement côté client
La cloche s’affiche dans l’en-tête via le hook displayNav2, à côté du panier et de « Mon compte ». Un badge rouge indique le nombre de notifications non lues (au-delà de neuf, il affiche 9+). Au clic, un panneau déroulant liste les notifications, les plus prioritaires et les plus récentes en premier.
- Marquer comme lu : un bouton « Tout marquer comme lu » et une lecture automatique au clic sur une notification.
- Bouton Copier sur les codes promo.
- Horodatage relatif (« il y a 2 h », « hier »…).
- Responsive : le panneau s’affiche en bas de l’écran (bottom-sheet) sur mobile.
- Accessibilité : attributs ARIA et fermeture au clavier (touche Échap).
État lu / non-lu
Pour les clients connectés, l’état lu / non-lu est stocké côté serveur, et donc partagé entre leurs appareils. Pour les visiteurs non connectés, il est mémorisé dans le navigateur via localStorage.
Statistiques (KPI)
Chaque notification cumule un compteur de vues et de clics, visibles dans la liste du back-office. Vous repérez ainsi en un coup d’œil les notifications qui génèrent le plus d’engagement.
Compatibilité PrestaShop 9
Le module est conçu et testé de PrestaShop 8.0 à 9.x :
- le contrôleur back-office utilise
ModuleAdminController, compatible 8 et 9 ; - les contrôleurs évitent les méthodes supprimées en PrestaShop 9 ;
- le contrôleur AJAX front renvoie directement du JSON via des méthodes
ajaxProcess, sans override de signature incompatible ; - aucun override du cœur de PrestaShop.
FAQ et dépannage
La cloche ne s’affiche pas dans l’en-tête
La cloche est greffée sur le hook displayNav2 du thème Classic, là où se trouvent le panier et le compte client. Sur un thème personnalisé qui n’expose pas cet emplacement, greffez le module sur le hook utilisé par votre en-tête depuis Modules > Gestionnaire de modules, ou contactez-nous.
Les nouveaux produits n’apparaissent pas
Vérifiez que l’option Nouveaux produits automatiques est activée. Si Produits actifs uniquement est coché, le produit doit être actif et visible. Un produit déjà notifié ne l’est pas une seconde fois.
Le badge ne se met pas à jour pour un visiteur
Pour les visiteurs non connectés, l’état lu est conservé dans le navigateur. Vider le cache ou les données du site réinitialise cet état. Pour un suivi partagé entre appareils, le client doit être connecté.
Le bouton Copier ne fonctionne pas
La copie utilise l’API presse-papiers du navigateur, disponible en HTTPS. Assurez-vous que votre boutique est servie en HTTPS ; une copie de secours est prévue, mais l’HTTPS garantit le meilleur fonctionnement.
Comment traduire les notifications ?
Le titre, le message et le libellé du bouton sont des champs multilingues : sélectionnez chaque langue dans le formulaire de la notification. Les libellés d’interface se traduisent via Paramètres avancés > Traductions > Traductions des modules installés, en choisissant dfnotificationcenter.
Est-ce compatible PrestaShop 9 ?
Oui. Le module est conçu et testé de PrestaShop 8.0 à 9.x, en mono-boutique comme en multiboutique.
Désinstallation
La désinstallation supprime l’onglet back-office, les réglages et les trois tables du module (notifications, traductions, état de lecture). Pour conserver vos notifications, désactivez le module sans le désinstaller.