> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aftersell.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Come funzionano i blocchi?

> Comprendi i blocchi di Aftersell Cart: sezioni e sotto-blocchi, carrello pieno vs vuoto, limiti, blocchi bloccati, condizioni e impostazioni per blocco.

Il layout del tuo carrello è una pila di **blocchi**: elementi configurabili che aggiungi, riordini, personalizzi e stilizzi nel cart editor. I blocchi che includi, e il loro ordine, sono il carrello che gli acquirenti vedono.

Per capire come i blocchi si collocano dentro **stati** e **sezioni**, consulta [Come funzionano i carrelli?](/it/aftersell/cart/how-carts-work).

<div id="blocks-and-sub-blocks">
  ## Blocchi e sotto-blocchi
</div>

Esistono due tipi di blocco:

* I **blocchi** si trovano direttamente nel carrello, in una delle tre sezioni: **Header**, **Body** o **Footer**. Ogni sezione offre un set diverso di blocchi.
* I **sotto-blocchi** si annidano dentro un altro blocco. Oggi solo [**Cart items**](/it/aftersell/cart/cart-items-block) ospita sotto-blocchi: la riga **Product** (la riga dell'articolo stessa), [**Subscription upgrade**](/it/aftersell/cart/subscription-upgrade-block) e [**Custom code**](/it/aftersell/cart/custom-code-blocks).

<div id="adding-reordering-and-removing-blocks">
  ## Aggiungere, riordinare e rimuovere blocchi
</div>

* **Aggiungi** un blocco con il selettore **Add block**. Un blocco appare in grigio se non può andare dove lo stai aggiungendo, o se hai raggiunto il suo limite (il selettore mostra un badge `count/max`).
* **Riordina** trascinando un blocco all'interno della sua sezione.
* **Rimuovi** con l'icona del cestino, tranne i blocchi bloccati (vedi sotto).
* **Mostra/nascondi** la maggior parte dei blocchi con l'interruttore a forma di occhio, che nasconde un blocco agli acquirenti senza eliminarlo. Alcuni blocchi strutturali non possono essere nascosti: **Cart items**, **Checkout button** e la riga **Product**.

<div id="locked-blocks">
  ## Blocchi bloccati
</div>

Alcuni blocchi possono essere riordinati ma non eliminati, così il comportamento fondamentale del carrello (per esempio il checkout) non può essere rimosso per errore:

* **Cart items**
* **Checkout button**

<div id="default-blocks">
  ## Blocchi predefiniti
</div>

I nuovi carrelli partono con un layout predefinito funzionante:

* **Carrello pieno:** Header, Banner, Cart items, Summary, Checkout button
* **Carrello vuoto:** Header, blocco Empty cart

<Info>
  Lo **stato di carrello vuoto** è l'intero layout vuoto. Il **blocco Empty cart** è un blocco al suo interno. Consulta [Come funzionano i carrelli?](/it/aftersell/cart/how-carts-work) per la differenza.
</Info>

<div id="how-many-of-each-block-you-can-add">
  ## Quanti blocchi di ogni tipo puoi aggiungere
</div>

I limiti si contano **per stato del carrello**, non per carrello. Il carrello pieno e il carrello vuoto hanno ciascuno il proprio limite, quindi un carrello può contenere tre Banner nel layout pieno e altri tre nel layout vuoto.

La maggior parte dei blocchi è limitata a uno per stato. Le eccezioni:

| Blocco         | Massimo per stato del carrello |
| -------------- | ------------------------------ |
| Banner         | 3                              |
| Image          | 3                              |
| Product add-on | 3                              |
| Summary        | 2                              |
| Custom code    | Illimitato                     |

<div id="content-design-and-code">
  ## Content, Design e Code
</div>

Ogni blocco si configura attraverso fino a tre superfici nell'editor:

* **Content**: le impostazioni del blocco (testo, scelta dei prodotti, soglie e così via). Il blocco **Custom code** è l'unica eccezione: non ha un pannello Content perché il blocco *è* il codice.
* **Design**: stile per singolo blocco che si sovrappone alle tue [**Impostazioni di design**](/it/aftersell/cart/design-settings) globali. Ogni blocco ne ha uno tranne **Custom code**, che non ha affatto un pannello di impostazioni.
* **Code**: sostituisci il rendering integrato del blocco con un [**template personalizzato**](/it/aftersell/cart/custom-templates). La maggior parte dei blocchi lo supporta; un paio no.

<div id="show-or-hide-by-market-country-or-currency">
  ## Mostrare o nascondere per mercato, paese o valuta
</div>

Alcuni blocchi possono mostrare impostazioni diverse, o nascondersi del tutto, in base a chi è l'acquirente. Questo è distinto dall'**interruttore a occhio** della barra laterale, che attiva o disattiva un blocco per tutti.

|               | **Interruttore a occhio**                                           | **Condizioni**                                                         |
| ------------- | ------------------------------------------------------------------- | ---------------------------------------------------------------------- |
| **Cosa fa**   | Nasconde o mostra l'intero blocco per tutti gli acquirenti          | Sceglie quale variante di impostazioni vede un acquirente (o niente)   |
| **In base a** | La tua scelta nell'editor                                           | Mercato Shopify, paese del cliente o valuta del cliente                |
| **Dove**      | Icona a occhio nella barra laterale sulla maggior parte dei blocchi | Pannello delle impostazioni per i blocchi che supportano le condizioni |

**Tipi di condizione supportati oggi:** mercato Shopify, paese del cliente e valuta del cliente (ciascuno con **In** o **Not in**). Il totale del carrello e il contenuto del carrello **non** sono tipi di condizione. Usa le soglie dei livelli di [Rewards](/it/aftersell/cart/rewards-block) per i progressi basati su spesa/quantità, o il [Cart SDK](/it/aftersell/cart/sdk-overview) quando ti serve una regola che l'editor non può esprimere.

Le condizioni sono una lista ordinata: vince la **prima condizione corrispondente**. Metti le regole specifiche sopra una condizione generica **All buyers**. Se non c'è corrispondenza, il blocco non renderizza nulla per quell'acquirente.

**Nell'editor oggi**, l'interfaccia completa delle Condizioni è disponibile sul blocco [**Rewards**](/it/aftersell/cart/rewards-block#per-market-rewards): set di livelli diversi per mercato, paese o valuta. Gli altri blocchi usano un'unica configurazione "all buyers" oppure non partecipano ancora a questo sistema.

L'anteprima dell'editor **non** valuta l'acquirente reale. Seleziona una condizione nel pannello per visualizzare in anteprima quella variante.

<div id="all-blocks">
  ## Tutti i blocchi
</div>

**Struttura**

* [Header](/it/aftersell/cart/header-block): titolo, conteggio articoli, logo e controllo di chiusura, fissati in alto.
* [Cart items](/it/aftersell/cart/cart-items-block): gli articoli che i clienti aggiungono al carrello; si ripete per riga.
* [Subscription upgrade](/it/aftersell/cart/subscription-upgrade-block): sotto-blocco che propone di convertire una riga in un abbonamento.
* [Summary](/it/aftersell/cart/summary-block): totali, risparmi e sconti applicati.
* [Checkout button](/it/aftersell/cart/checkout-button-block): la call-to-action principale verso il checkout.
* [Empty cart](/it/aftersell/cart/empty-cart-block): il contenuto mostrato quando il carrello è vuoto.
* [Express payments](/it/aftersell/cart/express-payments-block): pulsanti di checkout accelerato (Shop Pay, PayPal e così via) dentro il carrello.

**Merchandising**

* [Upsells](/it/aftersell/cart/upsells-block): raccomandazioni di prodotto scelte da una strategia.
* [Product add-on](/it/aftersell/cart/product-add-on-block): un singolo prodotto specifico offerto come add-on.
* [Rewards](/it/aftersell/cart/rewards-block): premi a livelli come spedizione gratuita o omaggi.
* [Shipping protection](/it/aftersell/cart/shipping-protection-block): un add-on opzionale di protezione della spedizione.

**Input dell'acquirente**

* [Discount code](/it/aftersell/cart/discount-code-block): un campo per applicare un codice sconto.
* [Notes](/it/aftersell/cart/notes-block): un campo per le note dell'ordine.

**Contenuto**

* [Banner](/it/aftersell/cart/banner-block): un banner con un messaggio, con timer per il conto alla rovescia opzionale.
* [Image](/it/aftersell/cart/image-block): una singola immagine o un preset ospitato come le icone di pagamento.
* [Custom code](/it/aftersell/cart/custom-code-blocks): HTML o React personalizzato ovunque nel carrello.

**Estensione**

* [Template personalizzati](/it/aftersell/cart/custom-templates): sostituisci il rendering di qualsiasi blocco dalla sua scheda Code.

<div id="blocks-available-in-each-section">
  ## Blocchi disponibili in ogni sezione
</div>

Ogni sezione ha un set diverso di blocchi disponibili. Questo mantiene il layout ordinato e riduce il disordine.

| Sezione    | Blocchi disponibili                                                                                                                                 |
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Header** | Header, Banner, Rewards, Image, Custom code                                                                                                         |
| **Body**   | Banner, Notes, Discount code, Cart items, Empty cart, Custom code, Rewards, Product add-on, Shipping protection, Image, Upsells                     |
| **Footer** | Banner, Notes, Discount code, Custom code, Rewards, Product add-on, Shipping protection, Express payments, Image, Upsells, Summary, Checkout button |

Alcuni di questi blocchi sono specifici di uno stato (per esempio Empty cart solo nello stato vuoto). Consulta [Come funzionano i carrelli?](/it/aftersell/cart/how-carts-work).

<div id="block-validation-errors">
  ## Errori di validazione dei blocchi
</div>

Se le impostazioni di un blocco contengono un valore non valido, un piccolo puntino rosso appare accanto al nome di quel blocco nella barra laterale. Il puntino rimane finché non risolvi il problema. Non è una notifica che si può chiudere.

Finché un blocco ha un errore, **il salvataggio è bloccato**. Il pulsante **Save** resta cliccabile, ma selezionandolo appare un toast di errore (*"Fix the errors in your cart blocks before saving"*) e si salta al primo blocco con un problema, aprendone le impostazioni così puoi correggere il campo evidenziato. **Publish** richiede inoltre che non ci siano modifiche non salvate, quindi rimane non disponibile finché un salvataggio pulito non riesce.

Una volta corretto il campo non valido, il puntino scompare da solo e il salvataggio procede normalmente.

<Note>
  I blocchi nascosti vengono comunque validati. Un blocco che hai nascosto può contenere un'impostazione non valida, mostrare un puntino di errore e bloccare il salvataggio esattamente come uno visibile, quindi se il salvataggio è bloccato e tutti i blocchi visibili sembrano a posto, controlla i blocchi nascosti.
</Note>
