Statistiques Live des ventes & vues de produits : installation et aide

Démarrage rapide

  1. Téléversez le ZIP du module dans "Modules > Module Manager" et ouvrez "Configure".
  2. Activez "Enable module" et les statistiques produit souhaitées.
  3. Gardez "Minimum count to display" à 0 pour le premier test.
  4. Activez "Show recent purchases modal" si nécessaire.
  5. Activez éventuellement "Show on product listings", puis enregistrez.
  6. Consultez un produit dans une session visiteur normale du navigateur et vérifiez une pastille de vues non nulle.
  7. Vérifiez un produit ayant des commandes valides et cliquez sur sa pastille de ventes pour tester Achats récents.

Nécessite PrestaShop 1.6.1 ou ultérieur et PHP 7.1 ou ultérieur.

Manuel de configuration

Installation et première configuration

  1. Téléversez le ZIP de Product Sales & Views Live Stats via "Modules > Module Manager".
  2. Ouvrez "Configure".
  3. Gardez "Enable module" activé et choisissez les compteurs à afficher.
  4. Laissez "Minimum count to display" à 0 pour votre premier test, puis enregistrez.
  5. Consultez un produit dans un navigateur normal avec un identifiant visiteur PrestaShop. Rechargez et vérifiez le widget.
  6. Testez la pastille de ventes sur un produit ayant une commande valide et ouvrez sa fenêtre d'achats récents.

Nécessite PrestaShop 1.6.1 ou ultérieur et PHP 7.1 ou ultérieur.

Paramètres d'affichage

Paramètre Valeur à l'installation Fonction
"Enable module" Oui Active l'affichage en boutique et le suivi des vues via les hooks du module.
"Show views count" Oui Affiche les identifiants visiteurs distincts suivis pour le produit sur la période glissante.
"Show sales count" Oui Affiche le nombre de commandes valides distinctes contenant le produit, et non les unités vendues.
"Show live viewers" Oui Affiche les visiteurs distincts ayant une vue suivie dans la fenêtre récente de direct.
"Show recent purchases modal" Oui Fait ouvrir une fenêtre Achats récents via AJAX par la pastille de ventes de la page produit.
"Show on product listings" Non Ajoute une pastille de ventes uniquement dans les listes via displayProductListReviews.
"Minimum count to display" 0 Masque le widget produit si les vues et ventes activées et ajustées sont toutes deux sous le seuil. Les visiteurs en direct seuls ne contournent pas ce contrôle. Les pastilles de liste appliquent le seuil aux ventes.

Chaque statistique produit apparaît uniquement si elle est activée et supérieure à zéro. Un seuil de 0 n'affiche pas de pastilles à valeur nulle. Les pastilles de liste peuvent apparaître indépendamment du réglage "Show sales count" de la page produit.

Calcul des compteurs

Le hook displayHeader enregistre une vue uniquement sur les pages produit ayant un identifiant produit et un identifiant visiteur. Les contrôles des robots précèdent l'insertion. Le même visiteur, produit et magasin ne sont pas enregistrés à nouveau pendant 30 minutes.

La statistique de vues affichée compte les identifiants visiteurs distincts sur toute la période, même si un visiteur possède plusieurs enregistrements. La statistique de ventes compte les commandes distinctes avec valid = 1 sur cette période et dans cette boutique. Les commandes valides existantes peuvent contribuer immédiatement ; les vues antérieures à l'installation ne sont pas importées.

Les visiteurs en direct sont les visiteurs distincts enregistrés dans la fenêtre récente. Il ne s'agit pas d'un suivi continu de présence en ligne. Le navigateur n'envoie pas de signal périodique pour maintenir un visiteur en direct, et la suppression des doublons peut empêcher les nouvelles vues d'actualiser l'horodatage pendant 30 minutes.

Le filtrage des robots utilise une table partagée mpr_sessions compatible lorsqu'elle est disponible. Sinon, il compare le user-agent à des motifs courants de robots et d'automatisation.

Valeurs internes

Le formulaire marchand actuel expose les sept paramètres d'affichage ci-dessus. Les valeurs suivantes existent dans le stockage du module, sans commandes séparées dans ce formulaire. Ces noms sont des clés de stockage, pas un fichier de configuration importable.

Clé Valeur à l'installation Utilisation à l'exécution
TIMEFRAME_VALUE 30 Quantité de l'intervalle de rapport.
TIMEFRAME_TYPE days Accepte hours, days ou months.
VIEWS_BOOST_MULTIPLY 1.0 Multiplie le nombre de vues distinctes.
VIEWS_BOOST_FLAT 0 Ajoute une quantité après multiplication et arrondi des vues.
SALES_BOOST_MULTIPLY 1.0 Multiplie le nombre de commandes distinctes.
SALES_BOOST_FLAT 0 Ajoute une quantité après multiplication et arrondi des ventes.
MODAL_LIMIT 10 Nombre maximal de lignes de détail de commandes récentes renvoyées.
ANONYMIZE 1 Masque le prénom et le nom des acheteurs ; ne masque ni ville ni pays.
LIVE_WINDOW 15 Fenêtre des vues récentes en minutes.

Les vues et ventes affichées utilisent max(0, round(raw * multiplier) + flat). Gardez les multiplicateurs à 1.0 et les ajouts à 0 pour obtenir les compteurs bruts. Une intégration par un développeur peut définir une période de 24 heures, 30 jours ou 3 mois. Il n'existe ni compteur initial par produit, ni champ de motif textuel, ni paramètre d'exclusion de produits ou catégories.

Achats récents et emplacement en boutique

La fenêtre charge les détails de commandes valides récentes du produit sélectionné : nom de l'acheteur masqué par défaut, ville, pays, temps relatif, nom du produit et quantité. Une ligne d'achat récent correspond à une ligne de détail de commande ; plusieurs déclinaisons dans une commande peuvent produire plusieurs lignes. Cette unité diffère du total de ventes en commandes distinctes.

Le widget produit utilise displayProductAdditionalInfo. L'affichage en liste utilise displayProductListReviews ; les ressources sont préparées pour les pages catégorie, recherche, fabricant, fournisseur, nouveautés, meilleures ventes et promotions lorsque l'affichage en liste est actif.

Pour un thème personnalisé omettant ces hooks, ajoutez une seule fois l'appel approprié :

{hook h='displayProductAdditionalInfo' product=$product}
{hook h='displayProductListReviews' product=$product}

Le contrôleur AJAX prend en charge action=getRecentOrders et action=getStats, chacun avec id_product. Générez l'URL du module avec les outils de liens PrestaShop dans vos intégrations personnalisées. Le script fourni charge la fenêtre d'achats ; l'existence d'un endpoint de statistiques ne signifie pas que le widget s'actualise en continu.

Vérification et dépannage

  • Utilisez un navigateur normal pour les tests de vues. Les outils automatisés peuvent être filtrés comme robots. Vérifiez que le navigateur possède un identifiant visiteur PrestaShop.
  • Consultez deux fois le même produit en 30 minutes. Cela ne doit pas ajouter une seconde vue enregistrée. Utilisez une autre session visiteur pour tester le comptage des visiteurs distincts.
  • Comparez les ventes aux commandes valides créées durant l'intervalle, plutôt qu'aux unités totales commandées ou à tous les états de commande.
  • Si aucune pastille n'apparaît, vérifiez les réglages activés, les compteurs nuls, le seuil et les hooks du thème.
  • Si la fenêtre échoue, inspectez sa réponse AJAX, les erreurs JavaScript et la connexion à la base de données. Gardez à l'esprit que l'anonymisation masque uniquement les noms.

Styles du thème

Utilisez .mprpsvls-widget, .mprpsvls-bar et .mprpsvls-listing-badge dans la feuille de style du thème. Theme Detector fournit notamment les variables --mprpsvls-primary, --mprpsvls-bg et --mprpsvls-border.

.mprpsvls-widget { margin: 12px 0 18px; }
.mprpsvls-bar { --mprpsvls-primary: #1f7a4d; }
.mprpsvls-listing-badge { font-size: 0.75rem; }

Désactiver ou désinstaller

Désactivez "Enable module" pour arrêter l'affichage et le suivi normaux. La désinstallation supprime la configuration du module, son menu, son inscription à Theme Detector et la table de suivi des vues. Sauvegardez cette table si vous avez besoin de son historique. Les commandes PrestaShop existantes restent intactes.

Questions

3

Le module compte-t-il les vues et les ventes séparément pour chaque boutique en multiboutique ?

Oui. Les vues produit sont enregistrées avec un identifiant de boutique. Les vues, commandes valides, visiteurs récents et achats récents sont filtrés par la boutique actuelle. La statistique de ventes compte les commandes valides distinctes de cette boutique, pas les unités vendues.

Quelles données visiteurs le suivi des vues enregistre-t-il ?

Chaque ligne de vue contient les identifiants du produit, de la boutique et du visiteur, un horodatage et un identifiant de ligne interne. Elle ne contient aucun nom, e-mail ni adresse IP. Les achats récents sont lus dans les commandes, clients et adresses existants. Les noms sont masqués par défaut, mais la ville et le pays restent visibles. Un nettoyage occasionnel supprime les vues plus anciennes que le double de la période de rapport ; la désinstallation supprime la table des vues.

Quel travail supplémentaire les statistiques ajoutent-elles aux pages produit ?

Le module enregistre les vues produit admissibles, interroge les compteurs activés et ajoute ses ressources de boutique aux pages produit. Les ressources des listes sont chargées lorsque leur affichage est activé. Les résultats des compteurs sont réutilisés au sein d’une même requête. Désactivez les statistiques inutiles et mesurez des pages produit et de liste représentatives avant de choisir votre configuration finale.

Problèmes connus

13

L'intégration au thème pouvait échouer avec d'autres modules

RésoluMis à jour :
Corrigé dans : 1.2.0
Le widget pouvait appeler des fonctions de détection du thème indisponibles dans la version chargée par un autre module installé.

Le retour à l'onglet animait des compteurs obsolètes

RésoluMis à jour :
Corrigé dans : 1.1.4
Le retour à un onglet produit rejouait l'animation des compteurs sans récupérer les statistiques à jour.

Enregistrer et rester abandonnait les paramètres

RésoluMis à jour :
Corrigé dans : 1.1.4
L'utilisation d'Enregistrer et rester pouvait abandonner les modifications de configuration sans avertissement.

Le widget apparaissait hors des pages produit

RésoluMis à jour :
Corrigé dans : 1.1.4
Sous PrestaShop 1.6, le widget pouvait apparaître dans des sections de page sans rapport ou être absent pour les produits virtuels.

Le widget s'exécutait deux fois

RésoluMis à jour :
Corrigé dans : 1.1.2
Le script du widget pouvait se charger deux fois, entraînant un double traitement des événements et des requêtes statistiques en double.

L'actualisation s'arrêtait après le premier retour à l'onglet

RésoluMis à jour :
Corrigé dans : 1.1.2
La règle d'actualisation ne se réactivait pas correctement pour les retours suivants à l'onglet.

Widget absent sous PrestaShop 1.6

RésoluMis à jour :
Corrigé dans : 1.1.2
Le widget utilisait un emplacement indisponible sur les pages produit standard de PrestaShop 1.6.

Renforcement de la sécurité

RésoluMis à jour :
Corrigé dans : 1.1.2
La protection des informations clients et de l'accès aux statistiques a été améliorée.

L'administration du module pouvait ne pas s'ouvrir

RésoluMis à jour :
Corrigé dans : 1.1.2
L'ouverture de l'administration du module pouvait s'arrêter sur une erreur dans les boutiques dépourvues de la prise en charge requise du formatage des prix.

Traductions manquantes

RésoluMis à jour :
Corrigé dans : 1.0.11
Le libellé d'erreur de la fenêtre de statistiques en direct pouvait rester non traduit.

Le style du widget est incompatible avec le regroupement

RésoluMis à jour :
Corrigé dans : 1.0.10
La feuille de style du widget ne s'intégrait pas correctement au regroupement des ressources de PrestaShop.

Les pages de requêtes statistiques pouvaient être indexées

RésoluMis à jour :
Corrigé dans : 1.0.10
Les moteurs de recherche pouvaient indexer la page de requêtes statistiques au lieu de l'exclure des résultats de recherche.

Le compteur de vues s'incrémente lors des visites de bots/crawlers

RésoluMis à jour :
Corrigé dans : 1.0.12

Les robots des moteurs de recherche gonflent le compteur de vues produit. Le Googlebot ajoute à lui seul des centaines de « vues » par jour.

Note de résolution

Ajout d'une détection de bots basée sur le User-Agent, avec une liste maintenue de signatures de crawlers connus.

Demandes de fonctionnalités

2

Implémenté

Activité produit en direct

Implémenté
Affichez les statistiques de ventes et de vues des produits avec des informations sur les commandes récentes.

Actualisation au retour sur l’onglet

Implémenté
Actualisez les informations de preuve sociale du produit lorsqu’un acheteur revient après avoir quitté l’onglet pendant au moins 20 secondes, avec un délai entre les actualisations.

Journal des modifications

v1.2.02026-10-04

  • Addedself-healing integrity checks for automatic diagnostics and repair
  • AddedLicense management tab with key management and renewal options
  • Addedcomplete FR/DE/ES/IT/PL translations
Versions précédentes

v1.1.02026-01-29

  • AddedPS 9 / Hummingbird theme compatibility
  • Addedconfigurable counter labels with translation support
  • ImprovedRedis-backed view counter — eliminates per-request DB writes
  • Fixedsales counter not updating on multi-currency stores

v1.0.112026-01-20

  • Addedcomplete FR/DE/ES/IT/PL translations
  • FixedAdd noindex header to stats ajax endpoint
  • FixedAdd theme detector support
  • FixedUse local CSS path for CCC bundling compatibility

v1.0.02025-10-18

  • Initialrelease: real-time product views and sales counters
  • InitialLive view counter on listing cards and product detail pages
  • InitialSales counter sourced from actual order history
  • InitialCompatible with PS 1.7.x and PS 8.x

Demo

Testez le module complet avant d'acheter

Achetez la licence plus tard et gardez vos réglages.

  • Votre démo de 30 jours Testez-le sur votre propre boutique pendant 30 jours à partir de la première installation.
  • Boutique de démo prête Découvrez une boutique de démo prête dans votre navigateur.
  • Sans inscription Ni compte, ni e-mail, ni domaine de boutique requis.
Lancer la boutique de démo

En téléchargeant, vous acceptez les conditions de la démo et la politique de confidentialité.

En ouvrant cette démo, vous acceptez les conditions de la démo et la politique de confidentialité.

Chargement...
Retour en haut