Schema.org structured data
Automatische strukturierte Daten JSON-LD (Schema.org) auf Produktseiten. Sie helfen Suchmaschinen, Rich Snippets in den Ergebnissen anzuzeigen.
Automatische Generierung
Section titled “Automatische Generierung”Strukturierte Daten werden auf Produktseiten automatisch generiert. Es ist nicht nötig, zusätzliche SEO-Plugins für strukturierte Produktdaten zu installieren - Polski for WooCommerce erledigt dies eigenständig.
Wenn Sie ein SEO-Plugin verwenden (Yoast, Rank Math, SEOPress), integriert sich Polski for WooCommerce damit und ergänzt die Daten, anstatt sie zu duplizieren.
Typ Product
Section titled “Typ Product”Auf jeder Produktseite wird ein Product-Objekt generiert, das Folgendes enthält:
{ "@context": "https://schema.org", "@type": "Product", "name": "Premium Cotton T-shirt", "description": "T-shirt made from certified organic cotton, sizes S-XXL.", "image": [ "https://yourstore.com/wp-content/uploads/tshirt-1.jpg", "https://yourstore.com/wp-content/uploads/tshirt-2.jpg" ], "sku": "TSH-001", "gtin13": "5901234123457", "brand": { "@type": "Brand", "name": "MyBrand" }, "manufacturer": { "@type": "Organization", "name": "Producer XYZ Sp. z o.o.", "address": { "@type": "PostalAddress", "streetAddress": "ul. Fabryczna 1", "addressLocality": "Warsaw", "postalCode": "00-001", "addressCountry": "PL" }, "url": "https://xyz.pl" }, "countryOfOrigin": { "@type": "Country", "name": "PL" }, "offers": { ... }, "aggregateRating": { ... }}Product-Felder
Section titled “Product-Felder”| Schema.org-Feld | Datenquelle | Erforderlich |
|---|---|---|
name | WooCommerce-Produktname | Ja |
description | Kurzbeschreibung des Produkts | Ja |
image | Hauptbild + Galerie | Ja |
sku | Produkt-SKU | Nein |
gtin13 / gtin8 | GTIN/EAN-Feld aus Polski | Nein |
brand | Hersteller/Marke aus Polski | Nein |
manufacturer | GPSR-Herstellerdaten | Nein |
countryOfOrigin | Ursprungsland aus GPSR | Nein |
category | Produktkategorie | Nein |
material | Attribut “material” (falls vorhanden) | Nein |
color | Attribut “color” (falls vorhanden) | Nein |
weight | WooCommerce-Produktgewicht | Nein |
Typ Offer
Section titled “Typ Offer”Jedes Produkt enthält ein verschachteltes Offer-Objekt mit Preis- und Verfügbarkeitsinformationen:
{ "@type": "Offer", "url": "https://yourstore.com/product/cotton-tshirt/", "price": "89.00", "priceCurrency": "PLN", "priceValidUntil": "2026-12-31", "availability": "https://schema.org/InStock", "itemCondition": "https://schema.org/NewCondition", "seller": { "@type": "Organization", "name": "My Store" }, "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" }}Offer-Felder
Section titled “Offer-Felder”| Schema.org-Feld | Datenquelle |
|---|---|
price | Produktpreis |
priceCurrency | WooCommerce-Währung |
priceValidUntil | Enddatum der Aktion |
availability | Lagerstatus |
itemCondition | Immer NewCondition |
seller | Shop-Name aus den Einstellungen |
deliveryTime | Lieferzeit aus Polski |
hasMerchantReturnPolicy | Widerrufsrecht aus Polski |
Zuordnung der Verfügbarkeit
Section titled “Zuordnung der Verfügbarkeit”| WooCommerce-Status | Schema.org |
|---|---|
instock | https://schema.org/InStock |
outofstock | https://schema.org/OutOfStock |
onbackorder | https://schema.org/BackOrder |
Typ Offer für variable Produkte
Section titled “Typ Offer für variable Produkte”Variable Produkte generieren ein AggregateOffer mit einer Preisspanne:
{ "@type": "AggregateOffer", "lowPrice": "69.00", "highPrice": "129.00", "priceCurrency": "PLN", "offerCount": 6, "availability": "https://schema.org/InStock", "offers": [ { "@type": "Offer", "price": "69.00", "sku": "TSH-001-S", "availability": "https://schema.org/InStock" } ]}Typ AggregateRating
Section titled “Typ AggregateRating”Wenn ein Produkt Bewertungen hat, wird ein AggregateRating-Objekt generiert:
{ "@type": "AggregateRating", "ratingValue": "4.5", "bestRating": "5", "worstRating": "1", "ratingCount": 23, "reviewCount": 18}Die Daten stammen aus dem WooCommerce-Bewertungssystem. Wenn das Modul Verifizierte Bewertungen aktiv ist, werden nur Bewertungen aus bestätigten Käufen berücksichtigt.
Typ Review
Section titled “Typ Review”Einzelne Bewertungen werden als Review-Objekte generiert:
{ "@type": "Review", "author": { "@type": "Person", "name": "Jan K." }, "datePublished": "2025-05-20", "reviewRating": { "@type": "Rating", "ratingValue": "5", "bestRating": "5" }, "reviewBody": "Excellent material quality, highly recommend."}Lebensmittelprodukte - NutritionInformation
Section titled “Lebensmittelprodukte - NutritionInformation”Für Produkte aus dem Lebensmittelmodul wird ein NutritionInformation-Objekt generiert:
{ "@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"}Filtern der strukturierten Daten
Section titled “Filtern der strukturierten Daten”Änderung des gesamten Objekts
Section titled “Änderung des gesamten Objekts”add_filter('polski/schema/product', function (array $schema, WC_Product $product): array { // Add a custom field $schema['award'] = 'Product of the Year 2025'; return $schema;}, 10, 2);Änderung des Offer
Section titled “Änderung des Offer”add_filter('polski/schema/offer', function (array $offer, WC_Product $product): array { // Add warranty information $offer['warranty'] = [ '@type' => 'WarrantyPromise', 'durationOfWarranty' => [ '@type' => 'QuantitativeValue', 'value' => 24, 'unitCode' => 'MON', ], ]; return $offer;}, 10, 2);Deaktivieren von Schema.org für ausgewählte Produkte
Section titled “Deaktivieren von Schema.org für ausgewählte Produkte”add_filter('polski/schema/enabled', function (bool $enabled, int $product_id): bool { // Disable for products in the "temporary" category if (has_term('temporary', 'product_cat', $product_id)) { return false; } return $enabled;}, 10, 2);Validierung der strukturierten Daten
Section titled “Validierung der strukturierten Daten”Testen Sie die strukturierten Daten Ihres Shops mit:
- Google Rich Results Test - offizielles Google-Tool
- Schema.org Validator - Schema.org-Validator
Im WordPress-Debug-Modus (WP_DEBUG = true) protokolliert das Plugin Warnungen zu fehlenden erforderlichen Schema.org-Feldern in debug.log.
Integration mit SEO-Plugins
Section titled “Integration mit SEO-Plugins”Polski for WooCommerce erkennt gängige SEO-Plugins und passt sein Verhalten an:
| Plugin | Verhalten |
|---|---|
| Yoast SEO | Ergänzt das vorhandene Yoast-Schema um Polski-Felder |
| Rank Math | Ergänzt das Rank-Math-Schema um Polski-Felder |
| SEOPress | Ergänzt das SEOPress-Schema um Polski-Felder |
| Keines | Generiert das vollständige Schema eigenständig |
Im Konfliktfall (Duplizierung strukturierter Daten) verwenden Sie den Filter:
add_filter('polski/schema/standalone', '__return_false'); // Disable standalone generationFehlerbehebung
Section titled “Fehlerbehebung”Google zeigt keine Rich Snippets an - Rich Snippets können mehrere Wochen nach der Indexierung erscheinen. Stellen Sie sicher, dass die Daten die Validierung im Rich Results Test bestehen.
Duplizierung strukturierter Daten - wenn ein anderes Plugin ein Product-Schema generiert, verwenden Sie den Filter polski/schema/standalone, um die eigenständige Generierung zu deaktivieren.
Keine Bewertungen in Schema.org - das Produkt muss mindestens 1 Bewertung mit einer Sternebewertung haben.
Probleme melden: github.com/wppoland/polski/issues