Karuzela Opinii Google dla Shopware 6: instalacja, konfiguracja i użytkowanie
Kompletny przewodnik po instalacji, konfiguracji i wyświetlaniu karuzeli opinii Google w Shopware 6.5, 6.6 i 6.7: klucz API, Place ID, pozycja, motywy, cache i komendy konsoli.
Wtyczka Karuzela Opinii Google wyświetla opinie Google o Twojej firmie w formie responsywnej karuzeli w storefroncie Shopware 6. Automatycznie generuje znaczniki Schema.org (LocalBusiness + AggregateRating + Review), buforuje opinie w cache i oferuje dwa wbudowane motywy. Nie wymaga builda administracji: instaluje się na dowolnym hostingu, również współdzielonym.
Wymagania
- Shopware 6.5.x, 6.6.x lub 6.7.x
- PHP 8.1 lub nowszy
- Klucz API Google Cloud z aktywowanym API Places (bezpłatny do dużego wolumenu zapytań)
- Place ID Twojej firmy w Google
Instalacja
Wgraj archiwum ZIP przez Rozszerzenia > Moje rozszerzenia > Prześlij rozszerzenie lub skopiuj katalog DfGoogleReviews do custom/plugins/. Następnie wykonaj:
bin/console plugin:refresh
bin/console plugin:install --activate DfGoogleReviews
bin/console cache:clear
Wtyczka pojawi się w Rozszerzenia > Moje rozszerzenia, gotowa do konfiguracji.
Uzyskanie klucza API i Place ID
Klucz API Google
- Wejdź na
console.cloud.google.comi utwórz (lub wybierz) projekt. - W sekcji Interfejsy API i usługi aktywuj API Places.
- W sekcji Dane logowania utwórz klucz API i skopiuj go.
- Zalecane: ogranicz klucz do API Places i do swojej domeny.
Place ID
Użyj narzędzia Place ID Finder od Google (dokumentacja Google Maps Platform), aby pobrać identyfikator swojej firmy. Ma on postać ChIJ....
Konfiguracja
Otwórz Rozszerzenia > Moje rozszerzenia > Karuzela Opinii Google > Konfiguruj. Wszystkie ustawienia są zarządzane per kanał sprzedaży: przed konfiguracją wybierz właściwy kanał sprzedaży u góry strony.
Połączenie z Google
- Włącz karuzelę: główny przełącznik.
- Klucz API Google: Twój klucz z aktywowanym API Places.
- Place ID: identyfikator Twojej firmy.
- Język opinii: kod języka (np.
pl,de,en) przekazywany do API dla tekstów i dat względnych. Pozostaw puste, aby użyć domyślnego ustawienia Google.
Wyświetlanie
- Pozycja: Strona główna (nad stopką), Wszystkie strony lub Ręcznie (zobacz następną sekcję).
- Tytuł: tytuł karuzeli (puste = domyślny przetłumaczony tytuł, dostępny w 5 językach).
- Motyw: Light lub Dark.
- Automatyczne przewijanie i interwał (w milisekundach): automatyczna pauza przy najechaniu kursorem i przy fokusie.
- Maksymalna liczba opinii: do 10 (API Google zwraca maksymalnie 5).
- Minimalna ocena: wyświetla tylko opinie powyżej progu (np. 4, aby zachować wyłącznie oceny 4 i 5 gwiazdek).
Cache
- Czas życia cache: od 1 godziny do 7 dni (zalecane 24 godziny).
Wyświetlanie karuzeli
Tryb automatyczny
Przy pozycji Strona główna lub Wszystkie strony karuzela wstawia się automatycznie nad stopką. Nie są wymagane żadne modyfikacje motywu.
Tryb automatyczny korzysta z bloku base_footer. Jeśli niestandardowy motyw całkowicie nadpisuje ten blok bez wywołania parent(), użyj trybu ręcznego opisanego poniżej.
Tryb ręczny (include Twig)
Wybierz pozycję Ręcznie, a następnie wstaw komponent w dowolnym miejscu motywu storefront:
{% sw_include '@DfGoogleReviews/storefront/component/df-google-reviews.html.twig' %}
To idealne rozwiązanie, aby umieścić opinie na konkretnej stronie CMS, w Shopping Experience lub w wybranym miejscu układu strony.
Komendy konsoli
Dwie komendy ułatwiają utrzymanie:
# Test polaczenia z API i podglad opinii (cache pomijany)
bin/console df:google-reviews:test
# Wyczyszczenie cache opinii
bin/console df:google-reviews:clear-cache
Obie akceptują opcję --sales-channel-id=..., aby wskazać konfigurację konkretnego kanału sprzedaży. Komenda testowa wyświetla nazwę firmy, ogólną ocenę i listę zwróconych opinii, co pozwala zweryfikować klucz API i Place ID przed publikacją.
SEO i Schema.org
Przy każdym wyświetleniu wtyczka wstrzykuje kompletne znaczniki JSON-LD: LocalBusiness (nazwa, ogólna ocena), AggregateRating (średnia i łączna liczba opinii) oraz blok Review dla każdej opinii. Znaczniki te mogą sprawić, że gwiazdki pojawią się w wynikach Google (rich snippets). Treść jest renderowana po stronie serwera, więc opinie pozostają czytelne dla robotów indeksujących i użytkowników bez JavaScriptu; karuzela stanowi jedynie progresywne ulepszenie.
Wydajność
CSS (~2 KB) i JavaScript (~2 KB, Vanilla JS) są wstrzykiwane wyłącznie na stronach, na których wyświetla się karuzela. Żadnych bibliotek zewnętrznych, żadnego jQuery. Zapytania do API Google Places są buforowane w cache obiektowym Shopware zgodnie ze skonfigurowanym czasem życia.
Płynna degradacja: jeśli API Google jest chwilowo niedostępne, ostatnie prawidłowe opinie z cache są nadal wyświetlane. Widget nigdy nie psuje storefrontu.
Rozwiązywanie problemów
- Karuzela się nie wyświetla: sprawdź, czy wtyczka jest aktywna, czy opcja “Włącz karuzelę” jest zaznaczona oraz czy klucz API i Place ID są uzupełnione. Uruchom
bin/console df:google-reviews:testw celu diagnozy. - Błąd API: upewnij się, że API Places jest aktywowane w Google Cloud, a klucz nie jest zbyt mocno ograniczony. Szczegóły znajdziesz w
var/log. - Opinie się nie aktualizują: wyczyść cache komendą
bin/console df:google-reviews:clear-cache(API Google i tak zwraca tylko 5 najnowszych opinii). - Tryb automatyczny niewidoczny na niestandardowym motywie: przełącz się na tryb ręczny i dodaj include Twig.
Odinstalowanie
Dezaktywuj, a następnie odinstaluj wtyczkę z poziomu Rozszerzenia > Moje rozszerzenia lub przez:
bin/console plugin:uninstall DfGoogleReviews
Jeśli przy odinstalowaniu wybierzesz usunięcie danych, cała konfiguracja (klucze DfGoogleReviews.config.*) zostanie automatycznie wyczyszczona.