# Pulsante Svuota carrello — Guida completa

> Panoramica Il modulo Pulsante Svuota carrello (dfclearcart) aggiunge nella pagina del carrello del tuo negozio un pulsante «Svuota carrello» che svuota l'intero carrello con un solo clic: tutti i prodotti,…

- Pagina: <https://www.datafirefly.com/it/documentation/dfclearcart/>
- Lingua: it
- Aggiornato il: 2026-06-17
- Altre lingue: [fr](https://www.datafirefly.com/documentation/dfclearcart/index.md), [en](https://www.datafirefly.com/en/documentation/dfclearcart/index.md), [es](https://www.datafirefly.com/es/documentation/dfclearcart/index.md), [de](https://www.datafirefly.com/de/documentation/dfclearcart/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfclearcart/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfclearcart/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfclearcart/index.md)
- Indice: <https://www.datafirefly.com/it/documentation/llms.txt>

## Panoramica

Il modulo **Pulsante Svuota carrello** (`dfclearcart`) aggiunge nella pagina del carrello del tuo negozio un pulsante **«Svuota carrello»** che svuota l'intero carrello con un solo clic: tutti i prodotti, le loro combinazioni e personalizzazioni, nonché i buoni sconto applicati. Il modulo è completamente autonomo: nessuna dipendenza da Composer, nessuna tabella SQL aggiunta.

Il pulsante viene iniettato con JavaScript tramite un hook sempre presente e poi posizionato all'interno del blocco del carrello. Compare quindi anche sui temi personalizzati che non attivano i consueti hook di visualizzazione della pagina del carrello.

## Compatibilità

- PrestaShop 8.0 a 9.x
- Mono-negozio e multinegozio
- 5 lingue: FR, EN, ES, DE, IT
- Tema Classic e temi personalizzati
- Nessuna dipendenza (né Composer né framework)

## Installazione

1. Nel back-office, apri **Moduli > Gestore moduli**.
2. Clicca su **Carica un modulo** e seleziona il file `dfclearcart.zip`.
3. Una volta installato, clicca su **Configura**.

Durante l'installazione, il modulo registra i suoi hook (caricamento delle risorse nel front-office e pulsante nella pagina del carrello) e crea le impostazioni predefinite: pulsante attivato, conferma attivata, etichette nelle cinque lingue.

## Configurazione

- **Attiva il pulsante**: mostra o nasconde il pulsante «Svuota carrello» nella pagina del carrello.
- **Richiedi conferma**: mostra una finestra di conferma prima dello svuotamento, per evitare clic accidentali.
- **Etichetta del pulsante**: testo mostrato sul pulsante, personalizzabile e traducibile in ogni lingua.
- **Messaggio di conferma**: testo della richiesta di conferma, personalizzabile e traducibile in ogni lingua.

Le etichette sono campi multilingue: seleziona ogni lingua nel selettore del campo per adattare il testo. I valori predefiniti sono forniti nelle cinque lingue fin dall'installazione.

## Funzionamento

### Cosa viene rimosso

Al clic (e dopo la conferma se attivata), il modulo rimuove **tutti i prodotti** dal carrello — comprese le loro combinazioni e personalizzazioni — quindi rimuove **tutti i buoni sconto e le regole carrello** applicati. Il carrello torna a uno stato completamente vuoto.

### Ricaricamento automatico

Una volta svuotato il carrello, la pagina del carrello viene ricaricata automaticamente per mostrare lo stato vuoto, senza azione da parte del cliente.

### Iniezione indipendente dal tema

Le risorse (script e stile) vengono caricate tramite l'hook `actionFrontControllerSetMedia`, sempre richiamato. Lo script individua quindi il blocco del carrello e vi inserisce il pulsante. Questo approccio garantisce la visualizzazione del pulsante anche quando il tema non attiva i consueti hook di visualizzazione della pagina del carrello.

Se il tema attiva l'hook `displayShoppingCartFooter`, il pulsante viene renderizzato direttamente lì e lo script vi si collega senza creare un duplicato.

### Sicurezza

Lo svuotamento avviene tramite una richiesta AJAX protetta da un token legato al carrello corrente e riguarda solo il carrello della sessione in corso. Nessun'altra sessione o carrello viene interessato.

## FAQ e risoluzione dei problemi

### Il pulsante non compare nella pagina del carrello

Svuota la cache di PrestaShop (Parametri avanzati > Prestazioni) e, durante i test, disattiva Combina/Comprimi (CCC) e forza la ricompilazione dei template. Quindi ricarica la pagina del carrello in una finestra privata. Il pulsante compare solo quando il carrello contiene almeno un articolo.

### Il mio tema personalizzato continua a non mostrare il pulsante

Il pulsante viene inserito nel primo contenitore del carrello riconosciuto. Se il tuo tema usa una struttura molto specifica, apri la console del browser: se l'oggetto `dfClearCart` è definito, le risorse vengono caricate correttamente e occorre solo adattare il selettore di inserimento al tuo blocco del carrello.

### Il carrello si svuota solo dopo un ricaricamento manuale

Assicurati di usare l'ultima versione del modulo: il ricaricamento della pagina del carrello viene attivato automaticamente dopo lo svuotamento.

### È compatibile con PrestaShop 9?

Sì. Il modulo è compatibile con PrestaShop 8 e 9, in multinegozio e multilingua, senza alcun metodo deprecato.
