Przejdź do głównej zawartości

Dane strukturalne Schema.org

Automatyczne dane strukturalne JSON-LD (Schema.org) na stronach produktów. Pomagają wyszukiwarkom wyświetlać rich snippets w wynikach.

Dane generują się automatycznie na stronach produktów. Nie potrzebujesz dodatkowej wtyczki SEO.

Jeśli używasz Yoast, Rank Math lub SEOPress, plugin uzupełnia ich dane zamiast duplikować.

Na stronie produktu generowany jest obiekt Product:

{
"@context": "https://schema.org",
"@type": "Product",
"name": "Koszulka bawełniana Premium",
"description": "Koszulka z certyfikowanej bawełny organicznej, rozmiary S-XXL.",
"image": [
"https://twojsklep.pl/wp-content/uploads/koszulka-1.jpg",
"https://twojsklep.pl/wp-content/uploads/koszulka-2.jpg"
],
"sku": "KSZ-001",
"gtin13": "5901234123457",
"brand": {
"@type": "Brand",
"name": "MojaMarka"
},
"manufacturer": {
"@type": "Organization",
"name": "Producent XYZ Sp. z o.o.",
"address": {
"@type": "PostalAddress",
"streetAddress": "ul. Fabryczna 1",
"addressLocality": "Warszawa",
"postalCode": "00-001",
"addressCountry": "PL"
},
"email": "kontakt@xyz.pl",
"url": "https://xyz.pl"
},
"countryOfOrigin": {
"@type": "Country",
"name": "PL"
},
"offers": { ... },
"aggregateRating": { ... }
}
Pole Schema.orgŹródło danychWymagane
nameNazwa produktu WooCommerceTak
descriptionOpis krótki produktuTak
imageZdjęcie główne + galeriaTak
skuSKU produktuNie
gtin13 / gtin8Pole GTIN/EAN z PolskiNie
brandProducent/marka z PolskiNie
manufacturerDane GPSR producentaNie
countryOfOriginKraj pochodzenia z GPSRNie
categoryKategoria produktuNie
materialAtrybut “materiał” (jeśli istnieje)Nie
colorAtrybut “kolor” (jeśli istnieje)Nie
weightWaga produktu WooCommerceNie

Zagnieżdżony obiekt Offer z ceną i dostępnością:

{
"@type": "Offer",
"url": "https://twojsklep.pl/produkt/koszulka-bawelniana/",
"price": "89.00",
"priceCurrency": "PLN",
"priceValidUntil": "2026-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"seller": {
"@type": "Organization",
"name": "Mój Sklep"
},
"shippingDetails": {
"@type": "OfferShippingDetails",
"deliveryTime": {
"@type": "ShippingDeliveryTime",
"handlingTime": {
"@type": "QuantitativeValue",
"minValue": 1,
"maxValue": 2,
"unitCode": "d"
},
"transitTime": {
"@type": "QuantitativeValue",
"minValue": 1,
"maxValue": 3,
"unitCode": "d"
}
},
"shippingDestination": {
"@type": "DefinedRegion",
"addressCountry": "PL"
}
},
"hasMerchantReturnPolicy": {
"@type": "MerchantReturnPolicy",
"merchantReturnDays": 14,
"returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
"returnMethod": "https://schema.org/ReturnByMail"
}
}
Pole Schema.orgŹródło danych
priceCena produktu
priceCurrencyWaluta WooCommerce
priceValidUntilData zakończenia promocji
availabilityStatus magazynowy
itemConditionZawsze NewCondition
sellerNazwa sklepu z ustawień
deliveryTimeCzas dostawy z modułu Polski
hasMerchantReturnPolicyPrawo odstąpienia z modułu Polski
Status WooCommerceSchema.org
instockhttps://schema.org/InStock
outofstockhttps://schema.org/OutOfStock
onbackorderhttps://schema.org/BackOrder

Produkty zmienne generują AggregateOffer:

{
"@type": "AggregateOffer",
"lowPrice": "69.00",
"highPrice": "129.00",
"priceCurrency": "PLN",
"offerCount": 6,
"availability": "https://schema.org/InStock",
"offers": [
{
"@type": "Offer",
"price": "69.00",
"sku": "KSZ-001-S",
"availability": "https://schema.org/InStock"
}
]
}

Przy produktach z opiniami generowany jest AggregateRating:

{
"@type": "AggregateRating",
"ratingValue": "4.5",
"bestRating": "5",
"worstRating": "1",
"ratingCount": 23,
"reviewCount": 18
}

Dane z systemu opinii WooCommerce. Z aktywnym modułem Zweryfikowane opinie uwzględniane są tylko opinie z potwierdzonego zakupu.

Poszczególne opinie generowane są jako obiekty Review:

{
"@type": "Review",
"author": {
"@type": "Person",
"name": "Jan K."
},
"datePublished": "2025-05-20",
"reviewRating": {
"@type": "Rating",
"ratingValue": "5",
"bestRating": "5"
},
"reviewBody": "Świetna jakość materiału, polecam."
}

Produkty spożywcze generują obiekt NutritionInformation:

{
"@type": "NutritionInformation",
"calories": "250 kcal",
"fatContent": "12 g",
"saturatedFatContent": "3 g",
"carbohydrateContent": "30 g",
"sugarContent": "5 g",
"proteinContent": "8 g",
"sodiumContent": "0.8 g",
"fiberContent": "2 g",
"servingSize": "100 g"
}
add_filter('polski/schema/product', function (array $schema, WC_Product $product): array {
// Dodanie własnego pola
$schema['award'] = 'Produkt Roku 2025';
return $schema;
}, 10, 2);
add_filter('polski/schema/offer', function (array $offer, WC_Product $product): array {
// Dodanie informacji o gwarancji
$offer['warranty'] = [
'@type' => 'WarrantyPromise',
'durationOfWarranty' => [
'@type' => 'QuantitativeValue',
'value' => 24,
'unitCode' => 'MON',
],
];
return $offer;
}, 10, 2);
add_filter('polski/schema/enabled', function (bool $enabled, int $product_id): bool {
// Wyłącz dla produktów z kategorii "tymczasowe"
if (has_term('tymczasowe', 'product_cat', $product_id)) {
return false;
}
return $enabled;
}, 10, 2);

Przetestuj dane strukturalne:

Z WP_DEBUG = true wtyczka loguje brakujące pola Schema.org do debug.log.

Plugin wykrywa wtyczki SEO i dostosowuje zachowanie:

WtyczkaZachowanie
Yoast SEOUzupełnia istniejący schemat Yoast o pola Polski
Rank MathUzupełnia schemat Rank Math o pola Polski
SEOPressUzupełnia schemat SEOPress o pola Polski
BrakGeneruje pełny schemat samodzielnie

Przy duplikacji danych użyj filtra:

add_filter('polski/schema/standalone', '__return_false'); // Wyłącz samodzielne generowanie

Google nie wyświetla rich snippets - rich snippets mogą pojawić się po kilku tygodniach od zaindeksowania. Upewnij się, że dane przechodzą walidację w Rich Results Test.

Duplikacja danych strukturalnych - jeśli inna wtyczka generuje schemat Product, użyj filtra polski/schema/standalone do wyłączenia samodzielnego generowania.

Brak ocen w Schema.org - produkt musi mieć co najmniej 1 opinię z oceną gwiazdkową.

Zgłaszanie problemów: github.com/wppoland/polski/issues

Ta strona ma wyłącznie charakter informacyjny i nie stanowi porady prawnej. Przed wdrożeniem skonsultuj się z prawnikiem. Polski for WooCommerce jest oprogramowaniem open source (GPLv2) dostarczanym bez gwarancji.