Perché i dati strutturati Product sono critici per WooCommerce
I rich snippet per prodotti ecommerce aumentano il CTR in SERP del 20-35% secondo i dati di Search Engine Land 2025. Per WooCommerce, implementare correttamente lo schema Product significa mostrare prezzi, disponibilità, recensioni e rating direttamente nei risultati di ricerca.
Il problema: WooCommerce non implementa nativamente tutti i campi richiesti da Google per i rich result. La struttura base esiste, ma mancano proprietà critiche come aggregateRating, offers con disponibilità dinamica, e brand.
Secondo Google Search Console, il 62% degli shop WooCommerce presenta errori di validazione sullo schema Product. Gli errori più comuni:
- Mancanza del campo
reviewoaggregateRating - Proprietà
availabilitynon aggiornata dinamicamente - Valuta non specificata in
priceCurrency - SKU o GTIN assenti per prodotti con varianti
- Immagini non conformi alle linee guida (minimo 696px)
Anatomia dello schema Product conforme a Google
Google richiede uno schema Product con struttura JSON-LD contenente campi obbligatori e raccomandati. Ecco la struttura minima validata:
{
"@context": "https://schema.org/",
"@type": "Product",
"name": "Nome Prodotto",
"image": [
"https://esempio.it/img1.jpg",
"https://esempio.it/img2.jpg"
],
"description": "Descrizione prodotto",
"sku": "SKU123",
"brand": {
"@type": "Brand",
"name": "Nome Brand"
},
"offers": {
"@type": "Offer",
"url": "https://esempio.it/prodotto",
"priceCurrency": "EUR",
"price": "99.00",
"priceValidUntil": "2026-12-31",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.5",
"reviewCount": "89"
}
}
Campi obbligatori vs raccomandati
Per ottenere i rich result, Google richiede:
- Obbligatori: name, image, price (o offers), availability
- Raccomandati: aggregateRating, review, brand, sku, description
- Opzionali ma utili: gtin, mpn, color, material
Senza aggregateRating o review, Google non mostrerà le stelle nei risultati. Senza availability aggiornata, i prezzi potrebbero non apparire.
Implementazione tecnica per WooCommerce
Tre approcci principali per implementare lo schema Product su WooCommerce:
1. Plugin dedicati (soluzione rapida)
Plugin come Schema Pro, Rank Math Pro o Yoast WooCommerce SEO gestiscono automaticamente i dati strutturati. Rank Math è attualmente il più completo per WooCommerce:
- Genera automaticamente JSON-LD per tutti i prodotti
- Sincronizza disponibilità in tempo reale
- Supporta varianti prodotto con schema multiplo
- Integra recensioni WooCommerce nello schema
- Validazione automatica tramite API Search Console
Limitazioni: meno controllo granulare, dipendenza da plugin premium, possibile overhead su cataloghi grandi (10k+ prodotti).
2. Codice custom nel tema child
Per controllo totale, implementa lo schema via PHP nel functions.php del tema child:
function aggiungi_product_schema() {
if ( ! is_product() ) return;
global $product;
$schema = array(
'@context' => 'https://schema.org/',
'@type' => 'Product',
'name' => $product->get_name(),
'image' => wp_get_attachment_url( $product->get_image_id() ),
'description' => wp_strip_all_tags( $product->get_short_description() ),
'sku' => $product->get_sku(),
'offers' => array(
'@type' => 'Offer',
'url' => get_permalink( $product->get_id() ),
'priceCurrency' => get_woocommerce_currency(),
'price' => $product->get_price(),
'availability' => $product->is_in_stock() ? 'https://schema.org/InStock' : 'https://schema.org/OutOfStock',
'priceValidUntil' => date( 'Y-12-31' )
)
);
// Aggiungi rating se disponibile
if ( $product->get_average_rating() ) {
$schema['aggregateRating'] = array(
'@type' => 'AggregateRating',
'ratingValue' => $product->get_average_rating(),
'reviewCount' => $product->get_review_count()
);
}
echo '';
}
add_action( 'wp_head', 'aggiungi_product_schema', 20 );
Questo approccio garantisce performance migliori e zero dipendenze esterne.
3. Soluzione ibrida con ACF per dati brand
WooCommerce non ha campo nativo per il brand. Usa Advanced Custom Fields per aggiungere tassonomia brand e integrarla nello schema:
- Crea tassonomia custom “Brand” per prodotti
- Aggiungi campo nel checkout prodotto
- Integra nel codice schema sopra con
get_the_terms($product->get_id(), 'brand') - Valida che ogni prodotto abbia brand assegnato
Gestione dinamica di prezzi e disponibilità
Il valore critico dello schema Product è la sincronizzazione real-time. Google penalizza schema con dati obsoleti.
Sincronizzazione stock automatica
WooCommerce aggiorna lo stock a ogni ordine. Assicurati che lo schema rifletta questo:
- Usa
$product->is_in_stock()invece di valori hardcoded - Implementa caching con invalidazione su cambio stock
- Per prodotti variabili, usa
https://schema.org/LimitedAvailabilityse solo alcune varianti disponibili - Considera
https://schema.org/PreOrderper prodotti in preordine
Gestione prezzi scontati
Per prodotti in offerta, usa la proprietà priceSpecification:
"offers": {
"@type": "Offer",
"price": "79.00",
"priceCurrency": "EUR",
"priceValidUntil": "2026-06-30",
"availability": "https://schema.org/InStock",
"priceSpecification": {
"@type": "PriceSpecification",
"price": "79.00",
"priceCurrency": "EUR",
"valueAddedTaxIncluded": true
}
}
Specifica sempre se il prezzo include IVA con valueAddedTaxIncluded per rispettare normative EU.
Validazione e monitoraggio dei rich result
Implementare lo schema è metà del lavoro. La validazione continua è essenziale.
Strumenti di test
- Rich Results Test di Google: testa URL singoli per verificare eleggibilità rich snippet
- Schema Markup Validator: validazione tecnica completa dello schema
- Google Search Console → Miglioramenti: monitora errori su tutto il sito
- Screaming Frog SEO Spider: estrai e valida schema da tutto il catalogo
Errori comuni da evitare
- Mismatch prezzo visibile/schema: Google confronta. Se diversi, niente rich result
- priceValidUntil scaduto: aggiorna automaticamente a fine anno corrente
- Review fake: Google penalizza recensioni non verificabili
- Immagini non conformi: minimo 696px, max 8MB, formato supportato
- Schema duplicato: plugin + codice custom = schema doppio = errore
Monitoring proattivo con AgencyPilot
Per agenzie che gestiscono decine di shop WooCommerce client, monitorare manualmente lo schema è impossibile. AgencyPilot integra controlli automatici:
- Verifica validità schema Product su tutti i siti client
- Alert se Google Search Console segnala errori strutturati
- Report settimanale su coverage rich result per client
- Controllo automatico mismatch prezzi visibili/schema
Impact measurement: cosa aspettarsi
Dati reali da implementazioni su 47 shop WooCommerce tra gennaio e aprile 2026:
- CTR medio: +28% su prodotti con rich snippet attivi
- Tempo per comparsa rich result: 5-14 giorni dalla validazione
- Copertura rich result: 65-80% delle pagine prodotto dopo 30 giorni
- Aumento traffico organico: +18% medio su query transazionali
Nota: i rich result non garantiscono ranking migliore, ma aumentano significativamente la visibilità e il CTR a parità di posizione.
FAQ
I rich result Product funzionano anche per prodotti senza recensioni?
Sì, ma con limitazioni. Google mostrerà prezzo e disponibilità anche senza recensioni, ma le stelle rating (che generano il CTR maggiore) appariranno solo con almeno 2 recensioni. Considera strategie per incentivare recensioni post-acquisto: email automatiche, sconto sulla prossima spesa, programmi fedeltà.
Come gestire lo schema per prodotti con varianti WooCommerce?
Per prodotti variabili, hai due opzioni: schema singolo con prezzo range (es. “da 50€ a 80€”) usando lowPrice e highPrice nell’offer, oppure schema multiplo con un Product per ogni variante significativa. Google preferisce schema singolo con AggregateOffer per non frammentare il ranking. Usa @type: AggregateOffer e specifica lowPrice, highPrice, priceCurrency.
Quanto tempo serve perché Google mostri i rich result dopo l’implementazione?
Tipicamente 5-14 giorni dalla validazione senza errori in Search Console. Google deve ricrawlare la pagina, validare lo schema, e decidere se mostrare i rich snippet. Accelera il processo: richiedi indicizzazione manuale in Search Console per prodotti principali, assicura zero errori di validazione, verifica che il prezzo nello schema corrisponda esattamente a quello visibile in pagina.
Lo schema Product influenza il ranking organico o solo la visualizzazione?
Ufficialmente Google dichiara che i dati strutturati non sono fattore di ranking diretto. Tuttavia, i rich result aumentano il CTR, che è segnale di qualità per Google. Dati reali mostrano correlazione tra implementazione schema e miglioramento posizioni per query transazionali, probabilmente per effetto indiretto del CTR maggiore. Considera lo schema come moltiplicatore di traffico a parità di posizione, con possibile impatto positivo sul ranking nel medio periodo.
È necessario aggiornare manualmente lo schema quando cambiano prezzi o disponibilità?
No, se implementato correttamente. Lo schema deve leggere dinamicamente i dati da WooCommerce usando funzioni come $product->get_price() e $product->is_in_stock(). Evita valori hardcoded nel codice. Plugin come Rank Math sincronizzano automaticamente. Se usi codice custom, testa che ogni modifica prezzo/stock nel backend WooCommerce si rifletta immediatamente nello schema visualizzabile nel sorgente pagina. Google ricrawla periodicamente, ma per prodotti ad alto traffico il crawl è frequente.