Thunder Page Speed Optimizer può aiutare immediatamente dal punto di vista delle prestazioni: rinvia gli script non critici e riduce la pressione JavaScript attorno alle interazioni del carrello. Utilizzo Thunder come livello di pulizia automatizzata, quindi utilizza questa guida per correggere il tema o la logica dell'app che controlla l'aggiornamento del carrello.
Correzione rapida con Thunder
Gli aggiornamenti del carrello avvengono in un momento delicato: l'acquirente ha fatto clic, il tema viene pubblicato su Shopify, le app possono aggiungere regali o sconti e l'interfaccia utente deve aggiornarsi prima che la fiducia diminuisca. Se script di terze parti bloccano il thread principale, gli acquirenti potrebbero fare clic due volte, abbandonare il carrello o presumere che il negozio sia guasto.
Caratteristiche di Thunder gestisce automaticamente il differimento degli script, l'ottimizzazione e i miglioramenti di Core Web Vitals. Ciò non riparerà un ascoltatore di eventi mancante, ma spesso rimuove il ritardo che nasconde gli aggiornamenti del carrello altrimenti funzionanti.
Installa ThunderPer prima cosa verifica se i dati del carrello o l'interfaccia utente del carrello sono danneggiati
Apri DevTools, fai clic su Aggiungi al carrello e guarda Rete. Se /cart/add.js o Risorse /cart/change.js restituisce una risposta 200 e /cart.js mostra il conteggio degli articoli corretto, i dati del carrello di Shopify vanno bene. La parte interrotta è l'interfaccia utente visibile: HTML del cassetto, conteggio del carrello, quantità di elementi pubblicitari, totale parziale o stato del pulsante di pagamento.
Se la richiesta fallisce con un reindirizzamento 400, 422 o un reindirizzamento, eseguire prima il debug del modulo del prodotto. Gli ID delle varianti, i piani di vendita, le app di abbonamento e le proprietà degli elementi pubblicitari in bundle possono far fallire una richiesta di carrello prima che il cassetto abbia qualcosa da aggiornare.
Per problemi relativi al percorso di acquisto, utilizzare il file cassetto del carrello che non apre la guida, Lista di controllo del pulsante aggiungi al carrelloe Guida alla risoluzione dei problemi dal carrello alla cassa.
Correggi gli aggiornamenti del carrello AJAX con il rendering della sezione
I temi Shopify moderni spesso recuperano sezioni aggiornate del carrello dopo una mutazione del carrello. Ciò mantiene sincronizzati il cassetto, il totale parziale, l'elenco degli articoli e l'icona del carrello senza ricaricare l'intera pagina. Gli ID esatti delle sezioni variano in base al tema, quindi controlla il cassetto del carrello e le sezioni dell'intestazione prima di copiare il codice.
async function changeCartQuantity(line, quantity) {
const change = await fetch('/cart/change.js', {
method: 'POST',
headers: { 'Content-Type': 'application/json', Accept: 'application/json' },
body: JSON.stringify({ line, quantity }),
});
if (!change.ok) throw new Error('Cart quantity update failed');
const sections = ['cart-drawer', 'cart-icon-bubble'];
const html = await fetch('/?sections=' + sections.join(',')).then((res) => res.json());
document.querySelector('cart-drawer')?.replaceWith(
new DOMParser().parseFromString(html['cart-drawer'], 'text/html').querySelector('cart-drawer')
);
document.querySelector('#cart-icon-bubble')?.replaceWith(
new DOMParser().parseFromString(html['cart-icon-bubble'], 'text/html').querySelector('#cart-icon-bubble')
);
document.dispatchEvent(new CustomEvent('cart:updated'));
} Non dare per scontato che questi ID di sezione esistano nel tuo tema. Cerca il tuo tema carrello-cassetto, icona-carrello-bolla, carrello-articolie articoli del carrello principale. I temi in stile Dawn hanno assistenti di aggiornamento diversi rispetto ai temi personalizzati precedenti.
Aggiorna insieme i pulsanti Conteggio carrello, Totale parziale e Rimuovi
Una correzione parziale comune aggiorna le voci del cassetto del carrello ma lascia obsoleto il conteggio delle intestazioni. Un altro bug comune rimuove visivamente un elemento ma mantiene il vecchio totale parziale. Entrambi fanno sì che gli acquirenti diffidino del momento del pagamento. Tratta il carrello come un unico sistema con stato, non come widget separati.
Dopo ogni mutazione del carrello, verifica cinque elementi: righe articolo, input di quantità, conteggio del carrello, totale parziale e stato disabilitato del pulsante di pagamento. Se qualcuno di essi mostra ancora dati non aggiornati, l'aggiornamento è incompleto.
| Sintomo | Probabile causa | Correzione |
|---|---|---|
| Conta gli aggiornamenti solo dopo l'aggiornamento | Sezione di intestazione non aggiornata. | Sostituisci la sezione dell'icona del carrello dopo le modifiche a /cart.js. |
| L'immissione della quantità torna indietro | Il tema esegue nuovamente il rendering dell'HTML obsoleto. | Recupera nuove sezioni del carrello dopo la modifica. |
| Il pulsante Rimuovi non fa nulla | Indice di riga o mancata corrispondenza dei tasti. | Utilizza la chiave dell'elemento riga o il numero di riga corretto. |
| Il regalo gratuito appare dopo la ricarica | L'app regalo aggiorna il carrello dopo l'aggiornamento del tema. | Attendi la mutazione del carrello dell'app, quindi aggiorna le sezioni. |
Disabilita le app del carrello e i vecchi snippet in un tema duplicato
I problemi del carrello spesso iniziano dopo l'installazione di un pacchetto, un regalo gratuito, un upsell, un abbonamento o un'app per il cassetto del carrello. L'app potrebbe ascoltare il nome di un evento mentre il tuo tema ne invia un altro. Oppure potrebbe modificare il carrello dopo che il tuo tema ha già eseguito il rendering del nuovo HTML.
Duplica il tema, disabilita gli incorporamenti dell'app e testa un prodotto semplice. Quindi riattiva le app una per una. Inizia con le app per carrello, pacchetto, regalo, abbonamento, popup, personalizzazione e creazione di pagine. Se il problema persiste dopo aver disinstallato un'app, esegui il file Elenco di controllo per la pulizia degli avanzi dell'app Shopify.
Anche gli stack pesanti di app danneggiano la reattività. Il Guida alla correzione degli script dell'app, Guida Shopify INPe guida completa all'ottimizzazione della velocità di Shopify coprire il lato velocità in modo più approfondito.
Correzione manuale vs. Correzione Thunder
| Problema | Correzione manuale | Correzione del tuono |
|---|---|---|
| Logica di aggiornamento del carrello rotta | Patch eventi AJAX e rendering delle sezioni. | Non una sostituzione logica; mantenere la patch manuale. |
| Risposta lenta del carrello | Controlla e rinvia manualmente gli script non critici. | Migliora automaticamente l'ordine di caricamento degli script. |
| L'app si gonfia nel carrello | Disabilita, profila e rimuovi gli avanzi dell'app. | Riduce il costo delle prestazioni degli script rimanenti. |
| Prima/dopo poco chiari | Prova PageSpeed, DevTools e dispositivi reali. | Abbinalo al test di velocità e ai dashboard delle app. |
Se il problema del carrello è legato alle prestazioni più ampie del negozio, confronta Prezzi tempestosi con Ottimizzazione pratica della velocità di Shopify.
FAQ
Perché il mio carrello Shopify non si aggiorna fino all'aggiornamento?
Di solito la richiesta di aggiunta al carrello o di quantità ha esito positivo, ma il tema non aggiorna il cassetto del carrello, il conteggio del carrello o le sezioni del carrello. Le cause più comuni sono gestori AJAX non funzionanti, eventi di temi non corrispondenti, conflitti di app e markup di sezioni memorizzate nella cache.
Perché il conteggio del carrello di Shopify rimane errato dopo aver aggiunto un prodotto?
The cart icon count often uses separate JavaScript from the cart drawer. If your code updates /cart.js but never replaces the count element, shoppers will see the old number until they refresh.
Le app di Shopify possono causare problemi di aggiornamento del carrello?
Sì. Cassetti del carrello, omaggi, pacchetti, upsell, abbonamenti, generatori di pagine e vecchi frammenti di app possono intercettare le richieste del carrello o ascoltare diversi eventi del carrello.
Dovrei usare /cart.js o il rendering della sezione per aggiornare il carrello?
Utilizza /cart.js per i dati del carrello e il rendering della sezione Shopify quando hai bisogno di un nuovo HTML per il cassetto, gli articoli del carrello o l'icona del carrello. Molti temi del Negozio online 2.0 utilizzano entrambi.
I problemi di velocità possono far sembrare il carrello rotto?
Sì. JavaScript pesante può ritardare le modifiche alla quantità, gli aggiornamenti dei cassetti e il feedback sui clic. Testa il flusso del carrello sui dispositivi mobili e misura l'INP, non solo il tempo di caricamento della home page.
Rendi di nuovo istantanei gli aggiornamenti del carrello.
Thunder riduce il trascinamento degli script attorno alle azioni del carrello ad alto intento mentre il tema gestisce correttamente la logica di aggiornamento del carrello.