Carrousel d’Avis Google pour Shopware 6 — Installation, configuration et utilisation
Guide complet pour installer, configurer et afficher le carrousel d'avis Google sur Shopware 6.5, 6.6 et 6.7 : clé API, Place ID, position, thèmes, cache et commandes console.
Le plugin Carrousel d’Avis Google affiche les avis Google de votre établissement sous forme de carrousel responsive dans le storefront Shopware 6. Il génère automatiquement le balisage Schema.org (LocalBusiness + AggregateRating + Review), met les avis en cache et propose deux thèmes intégrés. Aucun build administration n’est requis : il s’installe sur n’importe quel hébergement, y compris mutualisé.
Prérequis
- Shopware 6.5.x, 6.6.x ou 6.7.x
- PHP 8.1 ou supérieur
- Une clé API Google Cloud avec l’API Places activée (gratuite jusqu’à un large volume de requêtes)
- Le Place ID de votre établissement Google
Installation
Déposez l’archive ZIP via Extensions > Mes extensions > Charger l’extension, ou copiez le dossier DfGoogleReviews dans custom/plugins/. Puis exécutez :
bin/console plugin:refresh
bin/console plugin:install --activate DfGoogleReviews
bin/console cache:clear
Le plugin apparaît ensuite dans Extensions > Mes extensions, prêt à être configuré.
Obtenir votre clé API et votre Place ID
Clé API Google
- Rendez-vous sur
console.cloud.google.comet créez (ou sélectionnez) un projet. - Dans API et services, activez l’API Places.
- Dans Identifiants, créez une clé API et copiez-la.
- Recommandé : restreignez la clé à l’API Places et à votre domaine.
Place ID
Utilisez le Place ID Finder de Google (documentation Google Maps Platform) pour récupérer l’identifiant de votre établissement. Il ressemble à ChIJ....
Configuration
Ouvrez Extensions > Mes extensions > Carrousel d’avis Google > Configurer. Tous les réglages sont gérés par canal de vente : sélectionnez le sales channel concerné en haut de la page avant de configurer.
Connexion Google
- Activer le carrousel : interrupteur principal.
- Clé API Google : votre clé avec l’API Places activée.
- Place ID : l’identifiant de votre établissement.
- Langue des avis : code langue (ex.
fr,de,en) transmis à l’API pour les textes et dates relatives. Laisser vide pour le défaut Google.
Affichage
- Position : Page d’accueil (au-dessus du footer), Toutes les pages, ou Manuel (voir la section suivante).
- Titre : titre du carrousel (vide = titre traduit par défaut, fourni en 5 langues).
- Thème : Light ou Dark.
- Défilement automatique et intervalle (en millisecondes) : pause automatique au survol et au focus.
- Nombre maximum d’avis : jusqu’à 10 (l’API Google en renvoie 5 au maximum).
- Note minimum : n’affiche que les avis au-dessus du seuil (ex. 4 pour ne garder que les 4 et 5 étoiles).
Cache
- Durée de vie du cache : de 1 heure à 7 jours (24 heures recommandé).
Afficher le carrousel
Mode automatique
Avec la position Page d’accueil ou Toutes les pages, le carrousel s’insère automatiquement au-dessus du footer. Aucune modification de thème n’est nécessaire.
Le mode automatique passe par le bloc base_footer. Si un thème personnalisé écrase entièrement ce bloc sans appeler parent(), utilisez le mode manuel ci-dessous.
Mode manuel (include Twig)
Choisissez la position Manuel, puis insérez le composant où vous le souhaitez dans votre thème storefront :
{% sw_include '@DfGoogleReviews/storefront/component/df-google-reviews.html.twig' %}
C’est idéal pour placer les avis sur une page CMS précise, dans une Shopping Experience ou à un endroit spécifique de votre mise en page.
Commandes console
Deux commandes facilitent la maintenance :
# Tester la connexion API et prévisualiser les avis (cache ignoré)
bin/console df:google-reviews:test
# Vider le cache des avis
bin/console df:google-reviews:clear-cache
Les deux acceptent l’option --sales-channel-id=... pour cibler la configuration d’un canal de vente précis. La commande de test affiche le nom de l’établissement, la note globale et la liste des avis renvoyés — pratique pour valider la clé API et le Place ID avant publication.
SEO et Schema.org
À chaque affichage, le plugin injecte un balisage JSON-LD complet : LocalBusiness (nom, note globale), AggregateRating (moyenne et nombre total d’avis) et un bloc Review par avis. Ce balisage peut faire apparaître les étoiles dans les résultats Google (rich snippets). Le contenu étant rendu côté serveur, les avis restent lisibles par les robots d’indexation et les utilisateurs sans JavaScript ; le carrousel n’est qu’une amélioration progressive.
Performance
Le CSS (~2 KB) et le JavaScript (~2 KB, Vanilla JS) sont injectés uniquement sur les pages où le carrousel s’affiche. Aucune librairie tierce, aucun jQuery. Les appels à l’API Google Places sont mis en cache dans le cache objet Shopware selon la durée configurée.
Dégradation gracieuse : si l’API Google est momentanément indisponible, les derniers avis valides mis en cache continuent d’être affichés. Le storefront n’est jamais cassé par le widget.
Dépannage
- Le carrousel ne s’affiche pas : vérifiez que le plugin est activé, que la case « Activer le carrousel » est cochée, et que la clé API et le Place ID sont renseignés. Lancez
bin/console df:google-reviews:testpour diagnostiquer. - Erreur d’API : assurez-vous que l’API Places est bien activée dans Google Cloud et que la clé n’est pas trop restreinte. Consultez
var/logpour le détail. - Les avis ne se mettent pas à jour : videz le cache avec
bin/console df:google-reviews:clear-cache(l’API Google ne renvoie de toute façon que les 5 avis les plus récents). - Mode automatique invisible sur un thème custom : basculez en mode manuel et ajoutez l’include Twig.
Désinstallation
Désactivez puis désinstallez le plugin depuis Extensions > Mes extensions, ou via :
bin/console plugin:uninstall DfGoogleReviews
Si vous choisissez de supprimer les données lors de la désinstallation, toute la configuration (clés DfGoogleReviews.config.*) est automatiquement nettoyée.