Skip to main content

Panoramica

Alcuni temi non aggiornano automaticamente l’icona e questa guida ti mostrerà come risolvere il problema con un po’ di codice personalizzato. Segui i passaggi qui sotto per sincronizzare tutto correttamente. Ecco un esempio di come appare questa discrepanza: Drawer di Upcart che mostra Cart 2 mentre la bolla dell'icona del carrello del tema mostra ancora 1

Passaggi importanti prima di iniziare!

Per risolvere il problema dell’icona del carrello, dovrai identificare il nome della classe della tua icona del carrello. Ogni tema è diverso e questo passaggio garantisce che il codice funzioni specificamente per il tuo negozio.

1. Usa gli Strumenti per sviluppatori di Chrome

Ogni tema è diverso, quindi dovrai usare gli Strumenti per sviluppatori di Chrome (Ispeziona) per identificare il nome della classe della tua icona del carrello.
  • Fai clic destro sull’icona del carrello nel tuo storefront e seleziona Ispeziona in Google Chrome.
  • Trova l’elemento HTML della tua icona del carrello (ad es. <span class="cart-count-bubble">).
  • Hai bisogno di aiuto con gli Strumenti per sviluppatori di Chrome? Consulta questa guida per istruzioni passo dopo passo.

2. Chiedi aiuto (facoltativo)

Se non riesci a trovare la classe della tua icona del carrello o ti senti bloccato, niente paura! Hai delle opzioni:
  • Contatta lo sviluppatore del tuo tema: conosce il tuo tema meglio di chiunque altro e può aiutarti a trovare la classe corretta.
  • Assumi uno Shopify Expert: se hai bisogno di ulteriore supporto, Shopify dispone di una directory di esperti affidabili che possono aiutarti. Trova uno Shopify Expert qui.

🚧 Avvertenza sul codice personalizzato

Il codice di esempio fornito qui sotto è solo un template, non funzionerà se lo copi e incolli direttamente. Devi sostituire il nome di classe segnaposto (ad es. .cart-count-bubble > span) con il nome di classe specifico della tua icona del carrello.

Soluzione passo dopo passo

Abbiamo suddiviso questo processo in tre livelli di soluzioni, partendo dalla più semplice (Livello 1). Ogni livello si basa sul precedente: prova prima il Livello 1, poi passa al Livello 2 o 3 solo se necessario.

Passo 1: aggiungi il codice personalizzato in Upcart

Per prima cosa, dato che dovremo aggiungere del codice HTML personalizzato nell’editor di Upcart, prepariamo quella sezione:
  1. Vai su Upcart Editor > Settings, poi apri la scheda Custom HTML (sotto More settings se non entra nella riga delle schede).
  2. Imposta la posizione su Scripts (Before Load).
  3. Incolla qui il tuo codice modificato (forniamo esempi per ogni livello qui sotto).
Ecco come appare: Impostazioni Custom HTML di Upcart con la posizione HTML impostata su Scripts Before Load

Passo 2: applica la soluzione in base al livello

Livello 1 (base)

Quando il carrello si carica, questo script somma le quantità dei line item del carrello e scrive il totale nell’elemento del conteggio all’interno della bolla del carrello del tuo tema. È adatto ai temi in cui il conteggio si trova in un semplice elemento annidato (ad esempio, .cart-count-bubble > span). Non dimenticare
  • Sostituisci .cart-count-bubble > span con la classe della tua icona del carrello.
  • Testalo sul tuo storefront dopo aver aggiunto il codice.
Incollare lo script di conteggio del Livello 1 in Upcart Custom HTML usando il selettore cart-count-bubble

Codice di esempio per il Livello 1

Nota legacy: le callback window.upcartOnCartLoaded funzionano ancora ma sono deprecate e registrano avvisi in console. Usa upcartSubscribeCartLoaded per tutti i nuovi script. Nota che event.cart non ha una proprietà item_count: usa event.cart.items.reduce((total, item) => total + item.quantity, 0) per calcolare il numero totale di articoli.

Livello 2 (intermedio)

Se il Livello 1 non ha funzionato, il tuo tema potrebbe sostituire l’intero HTML dell’icona del carrello quando il conteggio cambia. Questa versione ricostruisce il markup dell’icona per gli stati carrello vuoto e non vuoto, così il conteggio e l’icona restano sincronizzati. Non dimenticare
  • Sostituisci #cart-icon-bubble-custom con il selettore del wrapper dell’icona del carrello del tuo tema.
  • Testa dopo il salvataggio.
Incollare lo script dell'icona del carrello del Livello 2 in Upcart Custom HTML usando il selettore cart-icon-bubble-custom

Codice di esempio per il Livello 2

Nota legacy: le callback window.upcartOnCartLoaded funzionano ancora ma sono deprecate e registrano avvisi in console. Usa upcartSubscribeCartLoaded per tutti i nuovi script.Nota che event.cart non ha una proprietà item_count — gli script qui sopra ricavano il totale con event.cart.items.reduce((total, item) => total + item.quantity, 0) e lo passano come itemCount. Le copie più vecchie di questi snippet che interpolano cart.item_count generano un ReferenceError e non aggiornano mai l’icona, senza segnalarlo.

Livello 3 (avanzato)

Se il tuo tema usa markup separati per l’icona del carrello su desktop e mobile, esegui la stessa logica di aggiornamento su due selettori, così ogni viewport riceve l’HTML e il conteggio corretti. Non dimenticare
  • Sostituisci #cart-icon-bubble-custom-desktop e #cart-icon-bubble-custom-mobile con le classi del tuo tema.
  • Testa a fondo sia nella vista desktop che in quella mobile.
Incollare lo script del Livello 3 in Upcart Custom HTML con selettori separati per l'icona del carrello su desktop e mobile

Codice di esempio per il Livello 3

Nota legacy: le callback window.upcartOnCartLoaded funzionano ancora ma sono deprecate e registrano avvisi in console. Usa upcartSubscribeCartLoaded per tutti i nuovi script.Nota che event.cart non ha una proprietà item_count — gli script qui sopra ricavano il totale con event.cart.items.reduce((total, item) => total + item.quantity, 0) e lo passano come itemCount. Le copie più vecchie di questi snippet che interpolano cart.item_count generano un ReferenceError e non aggiornano mai l’icona, senza segnalarlo.

Non funziona ancora?

Se nessuno di questi livelli risolve il problema, niente paura, non sei senza opzioni! Probabilmente il tuo tema richiede una personalizzazione più avanzata. Ecco cosa puoi fare adesso:
  • Contatta lo sviluppatore del tuo tema per ricevere aiuto.
  • Assumi uno Shopify Expert che possa creare una soluzione personalizzata su misura per il tuo negozio.