Google Reviews Carousel for Shopware 6 — Installation, configuration and usage
Complete guide to install, configure and display the Google reviews carousel on Shopware 6.5, 6.6 and 6.7: API key, Place ID, position, themes, cache and console commands.
The Google Reviews Carousel plugin displays your business’s Google reviews as a responsive carousel in the Shopware 6 storefront. It automatically generates Schema.org markup (LocalBusiness + AggregateRating + Review), caches the reviews and ships two built-in themes. No administration build is required: it installs on any hosting, including shared hosting.
Requirements
- Shopware 6.5.x, 6.6.x or 6.7.x
- PHP 8.1 or higher
- A Google Cloud API key with the Places API enabled (free up to a large request volume)
- The Place ID of your Google business
Installation
Upload the ZIP archive via Extensions > My extensions > Upload extension, or copy the DfGoogleReviews folder into custom/plugins/. Then run:
bin/console plugin:refresh
bin/console plugin:install --activate DfGoogleReviews
bin/console cache:clear
The plugin then appears under Extensions > My extensions, ready to configure.
Getting your API key and Place ID
Google API key
- Go to
console.cloud.google.comand create (or select) a project. - Under APIs and services, enable the Places API.
- Under Credentials, create an API key and copy it.
- Recommended: restrict the key to the Places API and your domain.
Place ID
Use Google’s Place ID Finder (Google Maps Platform documentation) to retrieve your business identifier. It looks like ChIJ....
Configuration
Open Extensions > My extensions > Google Reviews Carousel > Configure. All settings are managed per sales channel: select the relevant sales channel at the top of the page before configuring.
Google connection
- Enable the reviews carousel: main switch.
- Google API key: your key with the Places API enabled.
- Place ID: your business identifier.
- Reviews language: language code (e.g.
fr,de,en) passed to the API for review texts and relative dates. Leave empty for Google’s default.
Display
- Position: Homepage (above the footer), All pages, or Manual (see next section).
- Title: carousel heading (empty = translated default, provided in 5 languages).
- Theme: Light or Dark.
- Autoplay and interval (in milliseconds): automatic pause on hover and focus.
- Maximum number of reviews: up to 10 (the Google API returns 5 at most).
- Minimum rating: only shows reviews above the threshold (e.g. 4 to keep only 4 and 5-star reviews).
Cache
- Cache lifetime: from 1 hour to 7 days (24 hours recommended).
Displaying the carousel
Automatic mode
With the Homepage or All pages position, the carousel is inserted automatically above the footer. No theme change is required.
Automatic mode uses the base_footer block. If a custom theme fully overrides this block without calling parent(), use manual mode below.
Manual mode (Twig include)
Choose the Manual position, then include the component wherever you want in your storefront theme:
{% sw_include '@DfGoogleReviews/storefront/component/df-google-reviews.html.twig' %}
This is ideal for placing the reviews on a specific CMS page, inside a Shopping Experience or at a precise spot in your layout.
Console commands
Two commands make maintenance easier:
# Test the API connection and preview reviews (cache bypassed)
bin/console df:google-reviews:test
# Clear the reviews cache
bin/console df:google-reviews:clear-cache
Both accept the --sales-channel-id=... option to target a specific sales channel’s configuration. The test command shows the business name, the overall rating and the list of returned reviews — handy to validate the API key and Place ID before publishing.
SEO and Schema.org
On every render, the plugin injects complete JSON-LD markup: LocalBusiness (name, overall rating), AggregateRating (average and total review count) and one Review block per review. This markup can make stars appear in Google results (rich snippets). Since the content is rendered server-side, reviews stay readable by crawlers and users without JavaScript; the carousel is only a progressive enhancement.
Performance
The CSS (~2 KB) and JavaScript (~2 KB, vanilla JS) are injected only on pages where the carousel renders. No third-party library, no jQuery. Calls to the Google Places API are cached in the Shopware object cache according to the configured lifetime.
Graceful degradation: if the Google API is momentarily unavailable, the last valid cached reviews keep being displayed. The storefront is never broken by the widget.
Troubleshooting
- The carousel does not appear: check that the plugin is activated, that the “Enable the reviews carousel” box is ticked, and that the API key and Place ID are filled in. Run
bin/console df:google-reviews:testto diagnose. - API error: make sure the Places API is enabled in Google Cloud and the key is not too restricted. Check
var/logfor details. - Reviews are not updating: clear the cache with
bin/console df:google-reviews:clear-cache(the Google API only returns the 5 most recent reviews anyway). - Automatic mode invisible on a custom theme: switch to manual mode and add the Twig include.
Uninstallation
Deactivate then uninstall the plugin from Extensions > My extensions, or via:
bin/console plugin:uninstall DfGoogleReviews
If you choose to remove data on uninstall, all configuration (DfGoogleReviews.config.* keys) is automatically cleaned up.