SW Shopware 6 Beginner

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.

Updated Module version 1.0.0

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

  1. Go to console.cloud.google.com and create (or select) a project.
  2. Under APIs and services, enable the Places API.
  3. Under Credentials, create an API key and copy it.
  4. 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).

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:test to diagnose.
  • API error: make sure the Places API is enabled in Google Cloud and the key is not too restricted. Check var/log for 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.

Was this page helpful?

Still stuck? Contact support