Indice dell’articolo18 sezioni
- 01Perché lo SKU serve davvero nel carrello e nel checkout
- 02Le due strade: snippet PHP o plugin
- 03Metodo 1 — Snippet nel child theme
- 04Passo 1 — Accedi al functions.php del child theme
- 05Passo 2 — Incolla questo codice in fondo al file
- 06Passo 3 — Verifica gli ordini email e fattura
- 07Metodo 2 — Plugin Code Snippets
- 08Passo 1 — Installa Code Snippets
- 09Passo 2 — Crea un nuovo snippet
- 10Passo 3 — Verifica
- 11Casi limite e troubleshooting
- 12Dove altro mostrare lo SKU (se ti serve)
- 13Nella pagina archivio prodotti (lista catalogo)
- 14Nel "il tuo ordine" della pagina account
- 15Cosa portarsi a casa
- 16Conclusione
- 17Continua a leggere
- 18Domande frequenti
Ci scrive un cliente sotto la dashboard del suo e-commerce di ricambi: “i clienti mi mandano email per chiedere il codice articolo prima di comprare — devo cercarlo nel pannello ogni volta”. Il problema non è il cliente. È il codice SKU nascosto nelle pagine sbagliate di WooCommerce. Si risolve in cinque minuti — con due strade diverse, una scelta a testa.
Perché lo SKU serve davvero nel carrello e nel checkout
Lo SKU (Stock Keeping Unit) è il codice identificativo univoco di ogni prodotto del tuo magazzino. WooCommerce di default lo mostra solo nella scheda prodotto singola, sotto la descrizione. Nel carrello e nella schermata di checkout — cioè esattamente dove il cliente decide se comprare o no — non compare.
Per chi vende oggetti di consumo (estetica, food, fashion) non è un problema. Per chi vende ricambi, parti tecniche, materiali edili, ceramica per formato, taglie tecniche, prodotti professionali è un blocco serio: il cliente vuole verificare che il codice del prodotto nel carrello corrisponda esattamente a quello richiesto da un suo manuale, da un suo gestionale, da un suo fornitore. Senza SKU visibile, l’ultimo passo dell’acquisto diventa una scommessa — e nei B2B le scommesse non si fanno.
Aggiungere lo SKU al carrello e al checkout abbatte 3 frizioni: richieste pre-acquisto via email, resi per codice sbagliato, recensioni negative da chi pensa di aver ricevuto un articolo diverso.
Le due strade: snippet PHP o plugin
Per arrivare al risultato hai due vie. Scegli in base a quanto sei a tuo agio nel modificare il tema.
- Snippet PHP — 8 righe di codice nel
functions.phpdel tuo child theme. Veloce, zero plugin in più, ma se non hai un child theme rischi di perdere tutto al prossimo aggiornamento del tema. - Plugin Code Snippets — un plugin gratuito che salva gli snippet nel database, indipendente dal tema. Più sicuro per chi non gestisce il tema da solo, anche se aggiunge un plugin in più al tuo setup.
Sotto trovi entrambi i metodi, già testati su WooCommerce 8.x e WordPress 6.5+. Copia, incolla, salva.
Metodo 1 — Snippet nel child theme
Questo è il metodo che usiamo noi sui progetti dei nostri clienti. Pulito, veloce, zero overhead. Va però messo nel child theme, non nel tema principale, altrimenti al primo aggiornamento del tema lo perdi.
Passo 1 — Accedi al functions.php del child theme
Apri il file wp-content/themes/[nome-child-theme]/functions.php via FTP, SFTP o direttamente dall’editor file del tuo hosting. Se da WordPress vai in Aspetto > Editor di temi, assicurati di selezionare il child theme nel menu in alto a destra prima di modificare.
Passo 2 — Incolla questo codice in fondo al file
// SKU visibile nella riga del carrello e nel riepilogo checkout.
add_filter( 'woocommerce_cart_item_name', 'innova_show_sku_in_cart', 10, 3 );
function innova_show_sku_in_cart( $name, $cart_item, $cart_item_key ) {
$product = $cart_item['data'];
if ( ! is_object( $product ) ) {
return $name;
}
$sku = $product->get_sku();
return $name . ( $sku ? ' (SKU: ' . esc_html( $sku ) . ')' : '' );
}
Salva. Apri il carrello del tuo sito (anche da incognito): lo SKU appare in coda al nome di ogni prodotto, sia nella tabella carrello che nel riepilogo del checkout. Una sola modifica copre entrambe le pagine.
Passo 3 — Verifica gli ordini email e fattura
Lo stesso filtro woocommerce_cart_item_name alimenta anche le righe nelle email d’ordine al cliente e all’amministratore. Quindi lo SKU appare anche lì, senza altre modifiche. Fai un ordine di test e controlla che arrivi tutto.
Metodo 2 — Plugin Code Snippets
Se non hai un child theme attivo o preferisci non toccare i file del tema, c’è la via plugin. Code Snippets è gratuito, mantenuto da Code Snippets Pro Ltd, e gira su oltre 1 milione di installazioni: setup affidabile per snippet PHP isolati dal tema.
Passo 1 — Installa Code Snippets
Dal pannello WordPress vai in Plugin > Aggiungi nuovo, cerca “Code Snippets”, installa e attiva. Lo trovi nel menu laterale sotto la voce “Snippets”.
Passo 2 — Crea un nuovo snippet
Vai in Snippets > Add New, dai un nome leggibile (“SKU nel carrello WooCommerce”) e incolla nel campo del codice lo stesso codice del Metodo 1. Imposta lo scope a “Run snippet everywhere” e salva con “Save Changes and Activate”.
Passo 3 — Verifica
Apri carrello e checkout. Funziona identico al Metodo 1. La differenza è che ora lo snippet è custodito nel database, non in un file: sopravvive a un cambio tema e si disattiva con un click se serve fare debug.
Casi limite e troubleshooting
Tre situazioni che vediamo spesso nei nostri interventi, e come si risolvono.
- Prodotti senza SKU — il codice usa una condizione (
if ( $sku )): se il prodotto non ha SKU compilato, semplicemente non appende nulla. Niente “(SKU: )” vuoto a stonare nel carrello. - Prodotti variabili — la funzione legge lo SKU della variazione selezionata, non del prodotto padre. Se ogni taglia o colore ha un suo SKU, è quello che compare nel carrello — il comportamento giusto.
- Cache — se hai LiteSpeed, WP Rocket, W3 Total Cache, dopo aver salvato lo snippet svuota la cache del carrello e dell’oggetto (object cache se attivo). Altrimenti lo SKU sembra non comparire — ma è solo cache vecchia.
Dove altro mostrare lo SKU (se ti serve)
Lo stesso pattern del Metodo 1 si estende ad altre pagine. Sono varianti utili soprattutto per shop B2B e cataloghi tecnici.
Nella pagina archivio prodotti (lista catalogo)
add_action( 'woocommerce_after_shop_loop_item_title', 'innova_show_sku_in_archive', 5 );
function innova_show_sku_in_archive() {
global $product;
if ( ! is_object( $product ) ) return;
$sku = $product->get_sku();
if ( $sku ) {
echo 'SKU: ' . esc_html( $sku ) . '';
}
}
Lo SKU compare sotto il titolo nella griglia dei prodotti. Per chi vende ricambi è quasi obbligatorio: il cliente cerca per codice e deve trovarlo a colpo d’occhio nella lista.
Nel “il tuo ordine” della pagina account
Stesso filtro woocommerce_cart_item_name del Metodo 1 — è già coperto, niente codice in più. Il cliente che torna in account a verificare un vecchio ordine vede subito lo SKU di quello che ha comprato.
Cosa portarsi a casa
- Quando attivarlo — sempre, se vendi prodotti tecnici, ricambi, ceramica, materiali, B2B. Mai dannoso, anche su shop consumer.
- Come scegliere il metodo — child theme se hai un sito che gestisci tu o un dev di fiducia, plugin se preferisci tenere il tema “intoccato”.
- Cosa non fare — non incollare nel
functions.phpdel tema principale (non child). Al primo update del tema il codice sparisce e ti tocca rifare tutto.
“Bello, sì — ma prima funzionante.” Lo SKU visibile nel carrello è uno di quei dettagli silenziosi che fanno la differenza tra uno shop curato e uno che lascia il cliente a indovinare.
Conclusione
Cinque minuti, otto righe di codice o un plugin gratuito, e hai eliminato 3 frizioni dal tuo checkout: richieste pre-acquisto, resi per codice sbagliato, dubbi sulla scheda prodotto. Per chi vende a B2B, professionisti, tecnici, è la differenza tra un ordine completato e una email in più da gestire.
Se il tuo e-commerce ha bisogno di una passata seria — performance, SEO, micro-ottimizzazioni come questa — ne parliamo. Niente vetrine, solo strumenti che vendono.