E-commerce: Promocja i uruchomienie sklepu internetowego
Przydatne artykuły i instrukcje dotyczące promocji, uruchamiania i rozwoju sklepów internetowych w branży E-commerce

Strukturyzowane dane Schema.org dla produktów — pełny przewodnik z przykładami

Strukturyzowane dane Schema.org dla produktów: pełny przewodnik

Strukturyzowane dane Schema.org dla produktów — pełny przewodnik z przykładami

Szczegółowy przewodnik po strukturyzowanym oznaczaniu Schema.org dla sklepów internetowych: JSON-LD, obowiązkowe pola, przykłady, walidacja, częste błędy i zalecenia. Wszystko, czego potrzebujesz do rozszerzonych fragmentów produktów w wynikach wyszukiwania.

1. Czym jest Schema.org i dlaczego jest potrzebne

Schema.org — to słownik (schemat niezależny od dostawcy) dla strukturyzowanych danych, wspierany przez główne wyszukiwarki (Google, Yandex, Bing, Yahoo). Oznaczanie pomaga wyszukiwarkom prawidłowo zrozumieć zawartość karty produktu i może prowadzić do rozszerzonych fragmentów (cena, dostępność, ocena, opinie, zdjęcia), a także prawidłowego wyświetlania w mediach społecznościowych przez Open Graph i Twitter Cards.

Strukturyzowane dane to ustandaryzowany format przekazywania informacji o stronie i jej zawartości. Wyszukiwarki używają tych danych do poprawy wyników wyszukiwania: fragmenty produktowe z ceną i dostępnością, oceny gwiazdkowe, okruszki nawigacyjne i wiele innych.

Oficjalne linki:

2. Jaki format oznaczania użyć

Google zaleca JSON-LD (JavaScript Object Notation for Linked Data). Ten format nie ingeruje w DOM, łatwo go wstawić serwerowo i dynamicznie generować z danych BD. JSON-LD to blok

Ważne: price wysyłaj jako liczbę lub ciąg cyfr (bez symbolu waluty). availability używaj pełnego URL z schema.org (np. https://schema.org/InStock).

6. Pełne oznaczanie produktu (GTIN, brand, SKU, oceny, opinie)

Poniżej — rozszerzone oznaczanie z wieloma polami: GTIN, marka, SKU, wiele obrazów, aggregateRating, review, additionalProperty, shippingDetails, seller. To najbardziej kompletny przykład, który można dostosować do dowolnego sklepu internetowego.

Code: JSON-LD

W tym przykładzie pokazano: podstawowe informacje o produkcie, cechy przez additionalProperty, szczegółowe informacje o ofercie (cena, waluta, dostępność, stan, sprzedawca, dostawa), oceny i opinie.

Typ Product — główny typ Schema.org do opisu produktu. Zawiera nazwę, opis, obrazy, atrybuty (marka, GTIN, SKU) oraz zagnieżdżone typy Offer, AggregateRating, Review.

Typ Offer — opis oferty handlowej: cena, waluta, dostępność, stan, warunki dostawy, sprzedawca.

Typ AggregateRating — zbiorcza ocena produktu na podstawie wszystkich opinii.

Typ Review — pojedyncza opinia klienta z autorem, datą, tekstem i oceną.

Typ BreadcrumbList — łańcuch nawigacyjny (okruszki), pokazujący ścieżkę od strony głównej do bieżącego produktu.

7. Produkty wariantowe (rozmiar/kolor) — podejścia

Są dwa popularne podejścia do oznaczania produktów z wariantami (kolor, rozmiar, materiał):

  1. Jeden Product + tablica offers — jeśli wszystkie warianty są na jednej stronie. Każdy Offer zawiera własną cenę, dostępność i atrybuty wariantu.
  2. Wiele Product — jeśli każdy wariant ma osobną stronę/URL.

Przykład: Product z dwoma Offer (różne kolory, jedna strona):

Code: JSON-LD

Przy użyciu tablicy offers każdy element musi zawierać własny @type ("Offer"), cenę, walutę i status dostępności.

8. BreadcrumbList (okruszki nawigacyjne) — nawigacja

Okruszki nawigacyjne pomagają wyszukiwarkom pokazać strukturę strony we fragmencie i poprawiają nawigację użytkownika. Zaleca się umieszczanie BreadcrumbList na każdej stronie produktu razem z Product.

Code: JSON-LD

Każdy element tablicy itemListElement to obiekt typu ListItem z polami position (numer kolejny), name (nazwa) i item (URL).

9. Oceny produktów (aggregateRating)

Oceny pozwalają wyświetlać średnią ocenę produktu i liczbę opinii w rozszerzonym fragmencie. Zwiększa to zaufanie użytkowników i CTR z wyników wyszukiwania.

Code: JSON-LD

Zalecenie: ratingValue — liczba z separatorem dziesiętnym (np. 4.7), reviewCount — liczba całkowita. Nie podawaj fałszywych ocen — Google może nałożyć sankcje.

Dodatkowo można podać bestRating (maksymalna ocena, domyślnie 5) i worstRating (minimalna ocena, domyślnie 1).

10. Opinie klientów (review)

Opinie pozwalają szczegółowo opisywać zdanie użytkowników o produkcie, w tym autora, datę publikacji, tekst i ocenę. Każda opinia to osobny obiekt Review w tablicy.

Code: JSON-LD

Każda opinia zawiera autora (author), datę publikacji (datePublished), tekst (reviewBody) i ocenę (reviewRating). Można dodawać dowolną liczbę opinii, ale tylko prawdziwych.

11. Narzędzia sprawdzania i walidacji

  • Google Rich Results Test — szybko pokazuje błędy i ostrzeżenia dla rich snippets. Pozwala sprawdzić URL lub wkleić kod ręcznie.
  • Schema.org Validator — szczegółowa walidacja schematu od konsorcjum Schema.org.
  • Google Search Console — w sekcji „Ulepszenia" → „Produkty" można śledzić błędy po publikacji.
  • Yandex Webmaster — podobne narzędzie do sprawdzania danych strukturyzowanych.

12. Best practices i zalecenia

  • Generuj JSON-LD na serwerze z BD — cena, dostępność, SKU, obrazy powinny być zsynchronizowane z treścią strony.
  • Nie używaj testowych ani fałszywych danych w produkcji.
  • Jeśli pokazujesz wiele cen (promocje, rabaty), używaj priceValidUntil i podawaj aktualną cenę w offers.price.
  • Podawaj priceCurrency w formacie ISO 4217 (UAH, USD, EUR, RUB).
  • Nie twórz konfliktowego oznaczania — cena w JSON-LD musi zgadzać się z widoczną ceną na stronie.
  • Dla sklepów międzynarodowych podawaj locale, adres sprzedawcy i shippingDetails.
  • Używaj BreadcrumbList i Product razem — to poprawia nawigację w wynikach.
  • Dodawaj co najmniej jeden obraz z poprawnym URL (dostępnym do indeksacji).
  • Regularnie sprawdzaj oznaczanie przez Google Rich Results Test i Search Console.
  • Więcej o poprawie SEO strony przeczytasz w artykule: Jak poprawić SEO strony — przewodnik.
  • Do konfiguracji analityki i śledzenia eCommerce użyj materiału: Konfiguracja GA4 i analityki eCommerce.

13. Częste błędy i jak je naprawić

  • Błąd: price zawiera symbol waluty (2499 грн) — naprawa: przechowuj i wyświetlaj tylko cyfry, walutę podawaj w priceCurrency.
  • Błąd: brak image lub uszkodzony link — naprawa: dodaj co najmniej 1 poprawny dostępny URL obrazu.
  • Błąd: niepasujące URL — naprawa: używaj URL dokładnie bieżącej strony produktu w offers.url.
  • Błąd: tablica review lub aggregateRating zawiera fałszywe dane — naprawa: pokazuj tylko prawdziwe opinie i oceny.
  • Błąd: nieprawidłowy format availability — naprawa: używaj pełnego URL typu https://schema.org/InStock.
  • Błąd: duplikowanie oznaczania (wiele bloków JSON-LD z konfliktowymi danymi) — naprawa: połącz wszystko w jeden blok.
  • Błąd: brak breadcrumb na stronach produktów — naprawa: dodaj BreadcrumbList dla poprawy nawigacji w wynikach.

14. Szablon do dynamicznego wstawiania (PHP/Twig/Smarty)

Poniżej — szablon, w którym zmienne są zastępowane przez serwer. Podstaw swoje wartości zamiast %VAR%.

Code: JSON-LD (szablon)
Ważne dla użytkowników BooStore.pro: Platforma BooStore.pro zawiera już poprawną podstawową mikrodane (Product, Offer, Price, Availability, BreadcrumbList, ImageObject). Zwykle wystarczy rozszerzyć je dodatkowymi polami (gtin, mpn, brand) w razie potrzeby. Na platformie automatycznie włączone są oznaczanie ocen (aggregateRating) i opinie (review), co pozwala wyświetlać średnią ocenę i prawdziwe opinie użytkowników w rozszerzonych fragmentach.

❓ Często zadawane pytania (FAQ)

Czym jest Schema.org i jakie korzyści daje sklepowi internetowemu?

Schema.org — to słownik danych strukturyzowanych, wspierany przez Google, Yandex, Bing i Yahoo. Oznaczanie pomaga wyszukiwarkom rozumieć treść stron i wyświetlać rozszerzone fragmenty (cena, dostępność, ocena, opinie). Zwiększa to CTR z wyszukiwania i poprawia widoczność produktów.

Jaki format oznaczania najlepiej stosować?

Google zaleca JSON-LD. Nie wpływa na układ, łatwo generuje się go serwerowo, obsługuje wszystkie typy Schema.org i nie koliduje z oznaczeniem HTML. Microdata i RDFa uważane są za przestarzałe podejścia dla nowych projektów.

Czy trzeba dodawać wszystkie pola z przewodnika?

Nie. Do poprawnego rozszerzonego fragmentu wystarczy obowiązkowe minimum: name, image, description, offers.price, offers.priceCurrency, offers.availability, offers.url. Wszystkie pozostałe pola są zalecane i rozszerzają możliwości wyświetlania.

Czy można używać Schema.org dla produktów z wariantami (kolor, rozmiar)?

Tak. Jeśli warianty są na jednej stronie — użyj tablicy offers. Jeśli na różnych — utwórz osobny Product dla każdego wariantu. W obu przypadkach Google poprawnie przetwarza oznaczanie.

Jak sprawdzić, czy oznaczanie na mojej stronie działa poprawnie?

Użyj Google Rich Results Test (search.google.com/test/rich-results) — wklej URL lub kod oznaczania. Po publikacji śledź błędy w Google Search Console w sekcji „Ulepszenia" → „Produkty".

Czy trzeba dodawać oznaczanie ręcznie, jeśli strona jest na BooStore.pro?

Nie. BooStore.pro zawiera już wszystkie podstawowe mikrodane (Product, Offer, Price, Availability, BreadcrumbList, ImageObject, AggregateRating, Review). Dodatkowe pola (GTIN, MPN, brand) można dodać w razie potrzeby przez ustawienia platformy.



Responsywne projektowanie i mobilne menu dla sklepu internetowego: jak stworzyć responsywny sklep internetowy i mobilne menu
Lista kontrolna przed uruchomieniem sklepu internetowego: 29 krytycznych punktów do sprawdzenia przed pierwszą reklamą
BooStore.pro vs WordPress + WooCommerce: dlaczego wtyczki zabijają szybkość i bezpieczeństwo e-commerce