Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/martinfeuillet/genius-reviews/archive/refs/heads/master.zipImportez, affichez et optimisez vos avis clients WooCommerce avec JSON-LD SEO-ready.
Description
Genius Reviews permet d’importer vos avis clients depuis un fichier CSV et d’afficher automatiquement les grilles ou carrousels d’avis sur vos fiches produits WooCommerce.
Les avis sont stockés en tant que custom post type genius_review et enrichis de données JSON-LD pour le référencement.
Fonctionnalités principales :
- 🧾 Import CSV par lots, avec barre de progression et déduplication automatique
- ⭐ Grille, carrousel, badge et résumé (shortcodes, bloc Gutenberg et Elementor)
- 🧠 Tri par note, date, etc.
- 📈 Génération automatique de
aggregateRatingpour Google, avec fusion dans le schéma RankMath - 🗂️ Schéma
Productagrégé et mis en cache pour les catégories et attributs produits - 🔌 API REST de lecture et de mise à jour des avis, protégée par clé
- 🎨 Couleurs de marque et couleurs d’étoiles personnalisables
- 🌍 Compatible multisite
- 🗣️ Traductions : Français, Anglais (US / GB / IE), Espagnol, Italien, Allemand, Néerlandais, Polonais, Suédois
Les mises à jour sont distribuées directement depuis le dépôt GitHub du plugin (branche master).
Installation
- Téléversez le dossier
genius-reviewsdans le répertoire/wp-content/plugins/. - Activez le plugin depuis le menu Extensions de WordPress. WooCommerce doit être actif : sans lui, le plugin refuse de s’activer.
- Allez dans Genius Reviews → Options & Import pour configurer votre import et l’apparence.
- Utilisez le shortcode
[genius_reviews_grid]ou[genius_reviews_slider]dans vos pages produits.
À l’activation, le plugin enregistre le type de contenu genius_review, crée la table de cache des schémas, désactive les avis natifs WooCommerce et crée les options par défaut. En cas d’activation réseau sur un multisite, cette opération est répétée sur chaque site.
Réglages
Page Genius Reviews → Options & Import :
Affichage automatique
- Afficher les avis sur la fiche produit (grille placée après le contenu principal)
- Afficher le badge sur la fiche produit
- Afficher le badge sur les pages boutique et catégories
- Afficher les avis globaux du site lorsqu’un produit n’a aucun avis
Apparence
- Couleur de marque
- Couleur des étoiles, couleur du symbole interne, couleur des étoiles inactives
- Une couleur par note (de 1 à 5 étoiles)
Maintenance
- Fréquence de recalcul du cache des schémas catégories / attributs
- Synchronisation manuelle des notes produits
- Rafraîchissement ou purge du cache des schémas
- Génération de la clé d’API REST
Import CSV
L’import se fait depuis Genius Reviews → Options & Import, section Import CSV. Le fichier est traité par lots successifs en AJAX, ce qui permet d’importer de gros volumes sans dépassement de délai, avec une barre de progression et un récapitulatif par produit (ajoutés / mis à jour / ignorés / moyenne / total).
Colonnes attendues :
title, body, rating, review_date, source, curated, reviewer_name, reviewer_email, product_id, product_handle, reply, reply_date, picture_urls, ip_address, location
Points importants :
- Le séparateur (
,ou;) est détecté automatiquement. - Chaque avis reçoit un identifiant unique calculé à partir de l’e-mail, du produit, de la date et du début du texte. Réimporter le même fichier met à jour les avis existants au lieu de les dupliquer.
- L’adresse e-mail n’est jamais stockée en clair : seule une empreinte SHA-256 est conservée (RGPD).
- Un
product_idvide ou égal àall-reviews-pagecrée un avis « boutique », non rattaché à un produit. - Les images listées dans
picture_urlssont téléchargées dans la médiathèque ; la première devient l’image mise en avant de l’avis. - En fin d’import, la moyenne et le nombre d’avis sont recalculés pour chaque produit concerné, en ne comptant que les avis dont
curatedvautok.
Les avis peuvent aussi être créés ou corrigés à la main depuis le menu Genius Reviews, où la liste propose des colonnes triables (Product ID, Titre, Note, Validation) et des filtres par note et par validation.
API REST
Base : /wp-json/genius-reviews/v1/reviews
GET: liste publique des avis publiés, avec pagination optionnelle (per_page,page).POST: mise à jour d’un ou plusieurs avis existants. Nécessite la clé générée dans la page d’options, envoyée dans l’en-têteX-GR-Api-Key. Tant qu’aucune clé n’est générée, l’écriture est désactivée.
L’écriture est en mise à jour uniquement : chaque élément doit référencer un avis existant par son id. Les données personnelles (IP, empreinte e-mail, localisation) ne sont pas modifiables par l’API. La documentation complète se trouve dans le fichier API.md du plugin.
Référencement
Le plugin génère le JSON-LD des avis et de la note agrégée. Lorsque RankMath est actif, les notes sont fusionnées dans son schéma Product pour éviter les doublons ; sinon le schéma est émis par le plugin lui-même.
Un schéma Product agrégé (avec AggregateOffer et aggregateRating) est également produit pour les catégories WooCommerce et les attributs produits pa_*. Il est mis en cache, recalculé par tâche planifiée, et injecté uniquement si au moins 3 avis sont disponibles.
Shortcodes
Grille d'avis
[genius_reviews_grid]
Affiche les avis du produit courant sur une fiche produit WooCommerce.
[genius_reviews_grid product_id="123" limit="6" sort="date_desc"]
Affiche les avis d'un produit précis.
Slider d'avis
[genius_reviews_slider limit="12" sort="rating_desc"]
Affiche une sélection globale d'avis curés.
[genius_reviews_slider limit="12" sort="rating_desc" mode="compact"]
Affiche le slider en mode compact.
[genius_reviews_slider scope="category" limit="12" sort="rating_desc"]
Affiche les avis produits liés à la catégorie WooCommerce courante.
[genius_reviews_slider scope="category" term_id="12" taxonomy="product_cat" limit="12" sort="rating_desc"]
Affiche les avis produits d'une catégorie précise.
Le slider scope="category" calcule la moyenne et le nombre d'avis sur les produits de la catégorie. Si la catégorie contient 1 ou 2 avis, le slider complète l'affichage avec des avis produits pour atteindre 3 cartes, sans les intégrer aux statistiques catégorie. Si la catégorie ne contient aucun avis, ou si le shortcode est utilisé sur la page boutique sans catégorie courante, le slider affiche des avis produits globaux et utilise les statistiques des avis produits globaux.
Badge d'avis
[genius_reviews_badge]
Affiche le badge du produit courant.
[genius_reviews_badge product_id="123"]
Affiche le badge d'un produit précis.
[genius_reviews_badge scope="category" mode="compact_rating"]
Affiche le badge de la catégorie WooCommerce courante.
[genius_reviews_badge scope="category" term_id="12" taxonomy="product_cat" mode="compact_rating"]
Affiche le badge d'une catégorie précise.
Intégration automatique sur la boutique et les catégories
Pour afficher automatiquement le slider après la grille produits WooCommerce sur la boutique et les catégories, ajoutez ce hook dans le functions.php du thème enfant ou via un plugin de snippets :
add_action('woocommerce_after_shop_loop', function () {
$is_shop_page = function_exists('is_shop') && is_shop();
$is_category_page = function_exists('is_product_category') && is_product_category();
if (!$is_shop_page && !$is_category_page) {
return;
}
$term = get_queried_object();
if (!$term instanceof WP_Term) {
echo do_shortcode('[genius_reviews_slider scope="category" limit="12" sort="rating_desc"]');
return;
}
echo do_shortcode(sprintf(
'[genius_reviews_slider scope="category" term_id="%d" taxonomy="%s" limit="12" sort="rating_desc"]',
(int) $term->term_id,
esc_attr($term->taxonomy)
));
}, 20);
Pour l'afficher avant la grille produits, utilisez le hook woocommerce_before_shop_loop.
Frequently Asked Questions
Où apparaissent les avis ?
Les avis sont visibles dans la section “Avis de nos clients” en bas de chaque fiche produit, ou via les shortcodes.
Puis-je personnaliser les couleurs ?
Oui, une couleur principale est configurable dans la page d’options du plugin.
Est-ce compatible avec Elementor ?
Oui, un widget “Genius Reviews” est inclus, ainsi qu’un bloc Gutenberg.
Les avis sont-ils générés automatiquement ?
Non. Le plugin n’invente aucun avis : il importe ceux que vous fournissez via un fichier CSV, ou que vous saisissez manuellement. L’API REST permet de mettre à jour des avis existants, jamais d’en créer.
Pourquoi certains avis importés ne s’affichent-ils pas ?
Seuls les avis dont la colonne curated vaut ok sont comptés dans les moyennes et affichés dans les badges. Vous pouvez modifier ce statut depuis la liste des avis dans l’administration.
Que se passe-t-il si je réimporte le même fichier ?
Les avis déjà présents sont mis à jour, pas dupliqués : la correspondance se fait sur une empreinte calculée à partir de l’e-mail, du produit, de la date et du texte de l’avis.
Est-ce compatible avec RankMath ?
Oui. Si RankMath est actif, les notes Genius Reviews sont fusionnées dans son schéma Product afin d’éviter les données structurées en double.
Screenshots
- Interface d’import CSV
- Grille d’avis sur fiche produit
- Carrousel d’avis
- Réglages d’apparence
Changelog
1.3.7
- Repli de locale : les sites tournant sur une variante régionale sans catalogue dédié (
de_AT,de_CH,en_AU,nl_BE,es_MX…) chargent désormais le catalogue de leur langue au lieu d'afficher les chaînes source en français. - Chargement du domaine de traduction déplacé de
plugins_loadedversinit(priorité 1), conformément à WordPress 6.7+.
1.3.6
- Régénération du fichier
.pot(145 -> 161 chaînes) : toutes les chaînes du code sont désormais traduisibles. - Fusion du nouveau
.potdans les 9 fichiers.poet recompilation des.mo. - Traduction du suffixe « avis vérifiés » affiché côté boutique dans les 9 langues : il restait en français sur toutes les boutiques non francophones.
- Correction des marqueurs
%1$schemas/%2$skippedde la notice de recalcul des schémas, qui s'affichaient tels quels dans l'admin.
1.3.3
- Remplacement de la traduction
en_IEparen_GB.
1.3.2
- Mise à jour de la traduction anglaise (Irlande).
1.3.1
- Ajout du point d'entrée
POST /reviewspermettant de mettre à jour et de traduire les avis à distance. - Génération d'une clé d'API dans la page Options & Import, envoyée via l'en-tête
X-GR-Api-Key. - Documentation de l'API dans le fichier
API.md.
1.3.0
- Version de test interne.
1.2.9
- Mise à jour du système de vérification des mises à jour.
1.2.8
- Ajout du point d'entrée
GET /wp-json/genius-reviews/v1/reviewspour lister les avis publiés.
1.2.7
- Ajustement des couleurs des avis.
1.2.6
- Correction d'un avertissement PHP.
1.2.5
- Correction du double affichage des données enrichies RankMath.
1.2.4
- Ajout du JSON-LD produit complémentaire.
- Passage à une numérotation de version à trois chiffres.
- Application du standard de codage WordPress et bascule de l'update checker vers le nouveau dépôt.
1.2.2.6
- Correction de l'affichage du slider
scope="category"sur la page boutique quand aucune catégorie courante n'est disponible. - Mise à jour du hook d'intégration WooCommerce pour couvrir la boutique et les catégories produits.
1.2.2.5
- Complétion des traductions admin dans toutes les langues disponibles.
- Correction du fallback du slider catégorie quand la catégorie ne contient aucun avis.
- Fallback du slider
scope="category"vers les avis produits globaux sur la page boutique.
1.2.2.4
- Ajout du
scope="category"sur le shortcode slider pour afficher les avis produits de la catégorie WooCommerce courante ou d'une catégorie précise. - Calcul des statistiques du slider catégorie sur les avis produits de la catégorie, avec appoint d'avis produits uniquement pour compléter l'affichage.
- Fallback du slider catégorie vers les avis produits si la catégorie ne contient aucun avis.
1.2.2.3
- Ajout des couleurs personnalisables pour les étoiles par note, l’état inactif et le symbole interne.
- Centralisation du SVG des étoiles pour tous les shortcodes.
- Réorganisation de la page Options & Import.
1.2.2.1
- Ajout scope category pour le shortcode badge.
- Ajout scope category pour le shortcode slider, avec appoint d'avis produits si moins de 3 avis catégorie sont disponibles.
1.2.2
- Ajout d'un cache JSON-LD pour les pages catégories WooCommerce et attributs produits (
pa_*) avec recalcul par cron. - Génération d'un schéma
Productagrégé pour les catégories et attributs avecAggregateOfferetaggregateRatingcalculé depuis les avis Genius Reviews. - Calcul des notes catégories/attributs via moyenne pondérée des metas
_gr_avg_ratinget_gr_review_count. - Injection du schéma catégories/attributs uniquement si au moins 3 avis sont disponibles.
- Fusion des notes Genius Reviews dans le schéma
ProductRankMath pour éviter les doublons sur les fiches produits.
1.2.1.13
- Correction style badge et fix génération données enrichies compatible rank math
1.2.1.12
- Suppression "Lato" & remplacement transient par user meta temporaire pour l'import admin
1.2.1.11
- Fix taille svg compatible FF
1.2.1.10
- Ajout du mode compact sur le shortcode slider via
mode="compact"(colonne, gap réduit, 1 slide par vue) + centrage du bloc note en compact - Admin
genius_review: nouvelles colonnesProduct ID,Title,Note,Validation(curated), colonnes triables - Admin
genius_review:Product IDcliquable vers l’édition de l’avis + filtres par note et par validation - Page
gr-options: ajout de l’exemple shortcode compact dans la liste des shortcodes - Affichage auto des avis sur fiche produit déplacé pour sortir du layout en colonnes et se placer juste après le contenu principal
- Badge aligné sur les autres blocs : calcul basé uniquement sur les avis
curated = ok
1.2.1.9
- Fix remove_spacing all reviews new version
- Shortcode summary
1.2.1.7
- Fix badge
1.2.1.6
- Parametre sans espace pour shortcode reviews grid et affichage badge use_count_global quand option active
1.2.1.5
- Option affiché tous les avis du sites sur FP si le produit n'a pas d'avis
1.2.1.4
- Mise à jour système de purge
1.2.1.3
- Suppression du CSS inutilisé à l'upload
1.2.1.2
- Fix flush WP rocket
1.2.1.1
- Scope Prefix post css pour éviter les conflits
1.2.1
- Remplacement swiper par splide , suppression des style inline pour fichier css public
1.2.0.5
- Appel Swiper CDN
1.2.0.4
- Ajout slug feedback PL et NL
1.2.0.3
- Correction nom de fichier de trad suédois
1.2.0.2
- Patch synchronisation nouveaux avis
1.2.0.1
- Correction url feedback pour reviews grid
1.2.0
- Gestion de plusieurs image + Allègement du plugin + exclusions de répertoires
1.1.9
- Champs reviews éditable
1.1.8.5
- Fix swiper pagination css + build
1.1.8.4
- Fix swiper pagination css
1.1.8.3
- Fix spanish trad
1.1.8.2
- CSS ajustements
1.1.8
- lien questionnaire fb internationaux
- Fix traduction
- Couleur hex dans la page d'options
1.1.6
- Fix force allow csv upload
1.1.4
- Fix traduction php-format
1.1.2
- Ajout du titre affiché
1.1.0
- Output json avis généraux
- MAJ traductions
1.0.3
- Grille avis généraux
1.0.2
- Affichage du badge
- Gestion multisite
1.0.1
- Traductions
1.0.0
- Première version publique
- Import CSV
- Grille et carrousel d’avis
- JSON-LD automatique
Upgrade Notice
1.3.1
Ajoute l’écriture via l’API REST. Pensez à générer une clé dans Options & Import : sans clé, l’écriture reste désactivée.
1.2.4
Passage à une numérotation en trois chiffres et changement du dépôt de mises à jour.
1.0.0
Version initiale stable.