Właściciel sklepu na WordPressie staje dziś przed dwoma równoległymi kanałami widoczności: klasycznym SERP-em Google oraz odpowiedziami generatywnymi w ChatGPT, Gemini i Claude. Oba korzystają z tej samej infrastruktury danych, ale oczekują od niej czego innego. Ten poradnik porządkuje wdrożenie danych strukturalnych w WooCommerce w kolejności P0–P3, wskazuje pola wymagane przez Google, wyjaśnia deprecjacje z 2026 roku i pokazuje, jak oddzielić oczekiwania wobec rich results od realnej roli schema w systemach AI.
TL;DR Schema.org to słownik typów i właściwości, JSON-LD to nośnik danych, a Google i modele językowe to konsumenci tej samej struktury. Minimalny zestaw P0 dla sklepu to
Product+OfferorazOrganizationlubOnlineStorena stronie głównej. Schema dla Google daje rich results, knowledge panel i entity recognition; schema dla LLM wspiera rozpoznawanie encji i spójność faktów, ale nie gwarantuje cytowań. FAQ rich result zdeprecjonowano 7 maja 2026, HowTo już w 2023 roku. Oba typy nadal mogą wspierać parsowanie treści przez modele. Widoczny HTML i dostępność dla OAI-SearchBot mają większe znaczenie dla ChatGPT niż sam blok JSON-LD. Walidacja obejmuje Rich Results Test, Schema Markup Validator oraz raporty Merchant listings i Product snippets w Search Console. Semly.ai łączy generowanie JSON-LD dla WordPressa i WooCommerce z monitoringiem widoczności w pięciu modelach AI, co pozwala mierzyć efekt wdrożenia, a nie tylko go zakładać.
Dane strukturalne WordPress — co realnie dają w Google i w ChatGPT
Schema.org to słownik. Definiuje typy (Product, Offer, Organization) i właściwości (price, availability, sameAs). Aktualna wersja V30.1 została opublikowana 16 września 2026 roku, a typ Product jest używany na ponad 10 milionach domen. JSON-LD to format zapisu, w którym dane ze słownika trafiają do kodu strony. Google i modele językowe to konsumenci, którzy odczytują ten zapis w różnych celach.
Google rekomenduje JSON-LD jako format domyślny, przed microdata i RDFa. Powód jest praktyczny: blok JSON-LD można wstrzyknąć w <head> lub <body> bez modyfikowania struktury HTML, co w WordPressie oznacza mniejsze ryzyko konfliktu z motywem i wtyczkami. Microdata wymaga wplecenia atrybutów w znaczniki, co przy zmianie szablonu produktu generuje błędy trudne do wykrycia.
Kluczowa teza brzmi: schema to warunek konieczny, ale niewystarczający. Rozróżnienie kanałów wygląda następująco:
- Google: dane strukturalne zasilają rich results, knowledge panel i entity recognition. Google wprost deklaruje, że nie ma dodatkowych wymagań schema dla AI Overviews ani AI Mode, ale wymaga, aby dane zgadzały się z widoczną treścią strony.
- LLM: modele parsują przede wszystkim widoczny HTML. Test searchVIU z października 2025 roku, obejmujący pięć systemów AI, wykazał, że przy pobieraniu treści w czasie rzeczywistym modele czytały wyłącznie widoczny HTML, ignorując JSON-LD, ukryte microdata i RDFa.
Badanie Ahrefs opublikowane 11 maja 2026 roku objęło 1 885 stron, które dodały JSON-LD, oraz 4 000 stron kontrolnych w okresie od sierpnia 2025 do marca 2026. Wyniki: AI Overviews odnotowały zmianę −4,6% (istotną statystycznie), AI Mode +2,4% (nieistotną), a cytowania w ChatGPT +2,2% (nieistotne). Jednocześnie 53% stron cytowanych przez AI miało wdrożoną schema, co jest korelacją, a nie dowodem przyczynowości.
Na co uważać: nie obiecuj sobie ani klientowi cytowań w AI po samym wdrożeniu JSON-LD. Schema musi być zgodna z widocznym tekstem, w przeciwnym razie Google może nałożyć manual action. Nie ma sprzeczności między tezami o czytaniu JSON-LD: dane strukturalne wspierają indeksowanie i entity recognition, natomiast przy bezpośrednim pobieraniu strony przez chatbota liczy się widoczny HTML.
Które typy schema.org wdrożyć — tabela priorytetów P0–P3
Poniższa tabela porządkuje wdrożenie według zwrotu z nakładu. Priorytet P0 oznacza fundament bez którego pozostałe typy tracą sens.
| Typ | Wymagane pola (Google) | Zastosowanie e-commerce | Wsparcie Google | Wsparcie LLM |
|---|---|---|---|---|
Product (P0) |
name, image, offers |
Strona produktu | Product snippet, merchant listing | Pośrednie (entity) |
Offer (P0) |
price > 0, priceCurrency |
Cena, dostępność, warunki | Merchant listing | Pośrednie |
Organization / OnlineStore (P0) |
brak wymaganych, rekomendowane name, url, logo, sameAs |
Tożsamość marki | Knowledge panel, logo | Pośrednie (entity) |
AggregateRating (P1) |
ratingValue, reviewCount lub ratingCount |
Gwiazdki w SERP | Review snippet | Pośrednie |
Review (P1) |
author, reviewRating |
Opinie klientów | Review snippet | Pośrednie |
MerchantReturnPolicy (P1) |
applicableCountry, returnPolicyCategory |
Polityka zwrotów | Merchant listing | Pośrednie |
OfferShippingDetails (P1) |
deliveryTime, shippingDestination, shippingRate |
Dostawa | Merchant listing | Pośrednie |
BreadcrumbList (P2) |
itemListElement |
Nawigacja | Breadcrumb (desktop) | Pośrednie |
ItemList (P2) |
itemListElement |
Strony kategorii | Carousel (beta) | Pośrednie |
FAQPage (P3) |
mainEntity |
FAQ | Zdeprecjonowane (7.05.2026) | Możliwe parsowanie |
HowTo (P3) |
step |
Instrukcje | Zdeprecjonowane (2023) | Możliwe parsowanie |
sameAs / knowsAbout (P3) |
URL / Text | Disambiguacja encji | Knowledge panel | Pośrednie (entity) |
Przepływ danych w WooCommerce wygląda następująco: baza produktów WooCommerce → wtyczka SEO (Yoast, Rank Math) lub generator JSON-LD → blok JSON-LD w kodzie strony → Google (indeksowanie, rich results) oraz modele AI (parsowanie widocznego HTML wsparte sygnałami encji).
Krok 1 — Wdrożenie Product i Offer (fundament P0)
Zacznij od audytu tego, co już generuje Twoja wtyczka. Yoast, Rank Math i WooCommerce tworzą podstawowy blok Product, ale zakres pól bywa różny. Sprawdź, czy w kodzie strony znajdują się: name, image, description, sku, offers.price, offers.priceCurrency, offers.availability oraz offers.itemCondition.
Następnie uzupełnij pola, które wtyczki pomijają najczęściej:
gtin(GTIN-8, GTIN-12, GTIN-13, GTIN-14) lubmpn, jeśli nie masz GTIN.brand.namejako obiektBrand.categoryzgodna z taksonomią sklepu.priceValidUntildla promocji o określonym terminie.@idjako unikalny identyfikator produktu, co zapobiega duplikacji encji.
Warunkiem pojawienia się w merchant listings jest price większe od zera oraz priceCurrency w formacie ISO 4217 (dla Polski PLN). Cena musi być widoczna na stronie produktu. Rozbieżność między JSON-LD a widocznym HTML to najczęstsza przyczyna manual action w merchant listings.
Punkt kontrolny: Rich Results Test nie powinien zwracać błędów typu „missing field". Typowe objawy problemu to brak ceny w snippecie oraz ostrzeżenie dotyczące offers.
Krok 2 — Organization, OnlineStore i spójność encji (P0/P3)
Tożsamość marki budujesz raz, a korzystają z niej oba kanały. Blok Organization lub OnlineStore umieść na stronie głównej albo w sekcji „O nas". Google nie wymaga tu konkretnych pól, ale rekomenduje name, url, logo, sameAs, contactPoint oraz vatID.
Rola sameAs polega na disambiguacji encji. Linki do Wikipedii, Wikidata, LinkedIn, Facebooka i Google Business Profile pozwalają Google i modelom powiązać Twoją markę z jednym, spójnym bytem. Właściwość knowsAbout opisuje obszary ekspertyzy i wzmacnia ten sam mechanizm.
Pod Organization możesz umieścić hasMerchantReturnPolicy oraz hasShippingService, co przenosi politykę zwrotów i dostawy na poziom całej marki zamiast powtarzać ją przy każdym produkcie.
Punkt kontrolny: Schema Markup Validator bez błędów oraz weryfikacja spójności NAP (nazwa, adres, telefon) i linków sameAs z profilami zewnętrznymi.
Krok 3 — Zwroty i dostawa: MerchantReturnPolicy i OfferShippingDetails (P1)
Te dwa typy są najczęściej pomijane przez wtyczki i wymagają ręcznego uzupełnienia. Google wymaga w MerchantReturnPolicy pól applicableCountry oraz returnPolicyCategory (alternatywnie merchantReturnLink). Przy kategorii MerchantReturnFiniteReturnWindow konieczne jest merchantReturnDays. Uzupełnij także returnFees i returnMethod.
W OfferShippingDetails wymagane są deliveryTime, shippingDestination oraz shippingRate z wartością value lub maxValue i walutą currency. Politykę możesz zdefiniować na poziomie organizacji (jedna definicja dla całego sklepu) albo na poziomie pojedynczej oferty, gdy warunki się różnią.
Punkt kontrolny: raport Merchant listings w Search Console. Jeśli polityka zwrotów nie jest widoczna na stronie, dane strukturalne nie wystarczą do uzyskania rozszerzonego wyniku.
Krok 4 — Opinie, nawigacja i kategorie (P1/P2)
AggregateRating wymaga ratingValue oraz reviewCount lub ratingCount. Review wymaga author i reviewRating. Wdrażaj je wyłącznie dla prawdziwych opinii pobranych z systemu sklepu. Fałszywe oceny w danych strukturalnych to bezpośrednia droga do manual action.
BreadcrumbList z itemListElement wspiera nawigację okruszkową w wynikach desktopowych. ItemList na stronach kategorii porządkuje listę produktów i może zasilać carousel w wersji beta.
Punkt kontrolny: Rich Results Test dla Review snippet i Breadcrumb. Sprawdź, czy liczba opinii w JSON-LD zgadza się z liczbą widoczną na stronie.
Krok 5 — FAQ, HowTo i widoczność w LLM (P3)
FAQ rich result został zdeprecjonowany 7 maja 2026 roku, a HowTo już w 2023 roku. Oznacza to brak rozszerzonych wyników w Google, ale nie brak wartości samej struktury. FAQPage z mainEntity nadal porządkuje treść w sposób czytelny dla modeli językowych i poprawia UX strony.
Rekomendowany model to trzy poziomy FAQ: sklep, kategoria i produkt. Odpowiedzi utrzymuj w przedziale 40–80 słów, aby były zwięzłe i jednoznaczne. Treść FAQ musi być widoczna na stronie, nie ukryta w akordeonie ładowanym skryptem.
Punkt kontrolny: brak oczekiwania rich result oraz weryfikacja zgodności treści FAQ z widocznym tekstem.
Krok 6 — robots.txt, crawlers AI i walidacja końcowa
Dostępność dla robotów decyduje o tym, czy Twoja oferta w ogóle trafi do odpowiedzi ChatGPT. OpenAI rozróżnia cztery roboty: OAI-SearchBot odpowiada za wyszukiwanie w ChatGPT, GPTBot za trening modeli, ChatGPT-User za akcje podejmowane przez użytkownika, a OAI-AdsBot za reklamy. Zablokowanie OAI-SearchBot w robots.txt oznacza brak Twojej strony w wynikach wyszukiwania ChatGPT.
Checklista wdrożeniowa WooCommerce:
Productzname,image,offersna każdej stronie produktu.Offerzprice> 0 ipriceCurrency: PLN.- Uzupełnione
gtinlubmpnorazbrand.name. OrganizationlubOnlineStorezsameAsna stronie głównej.MerchantReturnPolicyzapplicableCountryireturnPolicyCategory.OfferShippingDetailszdeliveryTime,shippingDestination,shippingRate.AggregateRatingiReviewwyłącznie dla prawdziwych opinii.BreadcrumbListna wszystkich podstronach.- OAI-SearchBot i PerplexityBot dopuszczone w robots.txt.
- Zero błędów krytycznych w Rich Results Test i Schema Markup Validator.
Punkt kontrolny: raporty Merchant listings i Product snippets w Search Console bez błędów krytycznych.
Najczęstsze błędy i jak je naprawić
- Objaw: brak
gtin,mpnibrandw blokuProduct. Przyczyna: wtyczka nie mapuje tych pól z bazy WooCommerce. Naprawa: dodaj pola w edytorze produktu lub rozszerz generator JSON-LD o mapowanie atrybutów. - Objaw: cena wyświetla się jako tekst w JSON-LD. Przyczyna: wtyczka zapisuje
pricew cudzysłowie z separatorem przecinka. Naprawa: użyj formatu liczbowego z kropką dziesiętną. - Objaw: manual action w merchant listings. Przyczyna: schema niezgodna z widocznym HTML. Naprawa: zsynchronizuj dane strukturalne z treścią strony i złóż ponowną weryfikację.
- Objaw: duplikacja bloku
Product. Przyczyna: wtyczka SEO i ręczny kod generują dwa bloki. Naprawa: pozostaw jedno źródło prawdy, usuń nadmiarowy kod. - Objaw: gwiazdki zniknęły z SERP. Przyczyna: fałszywe
AggregateRatingbez realnych opinii. Naprawa: usuń dane strukturalne opinii do czasu zebrania prawdziwych ocen. - Objaw: brak rozszerzonego wyniku dla zwrotów. Przyczyna: brak
applicableCountryw polityce. Naprawa: uzupełnij wymagane pola i sprawdź raport Merchant listings. - Objaw: brak strony w wynikach ChatGPT. Przyczyna: zablokowany OAI-SearchBot. Naprawa: zmień reguły w robots.txt i zweryfikuj dostęp.
- Objaw: błędy po aktualizacji motywu. Przyczyna: brak walidacji po zmianie szablonu. Naprawa: uruchom Rich Results Test po każdym wdrożeniu produkcyjnym.
Co dalej — kolejne kroki i warianty
Wdrożenie schema to punkt startowy, nie meta. Kolejnym krokiem jest pomiar. Metryki, które warto śledzić, to AI Visibility Score, Share of Voice oraz Mention i Citation Rate w promptach zakupowych. Semly.ai łączy generowanie JSON-LD dla WordPressa i WooCommerce z monitoringiem widoczności w pięciu modelach AI, dzięki czemu wiesz, czy wdrożenie przekłada się na obecność w odpowiedziach, a nie tylko na poprawność walidacji.
Efekty wdrożeń Semly potwierdzają dwa case studies:
- case study Semly (RedCart): +25% rejestracji, +30% konwersji trial→paid oraz trzykrotny wzrost AI Visibility Score w 90 dni.
- case study Semly (Ofertoland): +980% widoczności i wzrost konwersji z 1,9% do 4,1% w 60 dni.
W kolejnym kwartale rozważ rozszerzenie o LoyaltyProgram, Certification i SizeSpecification, które Google wspiera w merchant listings. Jeśli Twój zespół nie ma zasobów technicznych, integracja Semly.ai z WordPressem i WooCommerce odbywa się przez klucz API, bez pisania kodu. Ręczny JSON-LD pozostaje właściwą ścieżką przy niestandardowych motywach i nietypowych modelach produktowych.
Mini-słownik pojęć
- schema.org: słownik typów i właściwości opisujących encje w sieci.
- JSON-LD: format zapisu danych strukturalnych w bloku skryptu, rekomendowany przez Google.
- rich result: rozszerzony wynik wyszukiwania z dodatkowymi elementami, np. ceną lub gwiazdkami.
- entity: jednoznacznie zidentyfikowany byt (produkt, marka, osoba) rozpoznawany przez wyszukiwarkę.
- GEO/AEO: optymalizacja pod silniki generatywne i odpowiedzi AI.
FAQ
Czy JSON-LD pomaga w ChatGPT? Pośrednio. Modele przy pobieraniu treści w czasie rzeczywistym czytają widoczny HTML, ale dane strukturalne wspierają rozpoznawanie encji i spójność faktów w indeksach.
Czy FAQ schema nadal działa w 2026? Nie generuje rich results od 7 maja 2026, ale nadal porządkuje treść i może wspierać parsowanie przez modele językowe.
Jakie pola Product schema są wymagane?
name, image oraz offers. Dla merchant listings dodatkowo price większe od zera i priceCurrency.
Czy WooCommerce generuje schema automatycznie?
Generuje podstawowy blok Product, ale zwykle pomija gtin, mpn, brand, MerchantReturnPolicy i OfferShippingDetails.
Czy schema wpływa na CTR? Wpływa pośrednio przez rich results. Case studies Google pokazują wzrosty, m.in. +82% dla Nestlé i +25% dla Rotten Tomatoes, ale efekt zależy od typu wyniku i branży.