# Regole dei moduli

> Formspree Docs · Funzionalità avanzate · 28 febbraio 2026

#### Disponibile su: piano Business

Formspree ti permette di impostare regole personalizzate che controllano la consegna degli invii dei tuoi moduli, oppure ti consentono di eseguire azioni speciali, in base a determinati criteri chiamati Trigger. Le regole possono essere usate per:

-   Inviare email a destinatari diversi in base al valore dei dati del modulo, come un input a tendina o una casella di spunta, oppure
-   inviare email a più destinatari, oppure
-   contrassegnare gli invii come spam in base al contenuto o alla presenza di un campo honeypot personalizzato, oppure
-   reindirizzare in modo condizionale a una pagina di "Ringraziamento" diversa dopo l'invio del modulo.

Ecco come iniziare:

## Aggiungere la tua prima regola

Per impostazione predefinita, gli invii vengono inviati all'email di destinazione di un modulo. Tuttavia:

**Se crei una regola, l'email di destinazione del modulo viene ignorata e sono invece le regole a determinare la consegna delle notifiche.** 

Ti consigliamo di aggiungere prima una regola predefinita che venga sempre attivata. Puoi aggiungere una regola predefinita seguendo questi passaggi:

1.  Fai clic sulla scheda Rules, poi su Add Rule:  
      
    ![Rules\_Screenshot1.png](/images/zendesk/1db227244a4352bf.png)  
      
    
2.  Imposta la colonna "Do" su "Send Email" e scegli un indirizzo email destinatario tra i tuoi indirizzi verificati. Poi fai clic su Save. Lascia la condizione su "Always" così che, alla ricezione di un nuovo invio, questa regola venga sempre attivata.  
    ![Rules\_Screenshot2.png](/images/zendesk/017bdf07e8233905.png)

A questo punto, quando viene ricevuto un nuovo invio, verrà inviata un'email di notifica all'indirizzo Target Email. Questo è simile al funzionamento predefinito dei moduli Formspree.

## Instradare le email con un menu a tendina del modulo

Supponiamo che tu abbia un modulo con un input di tipo select, che consente ai visitatori di scegliere tra alcune opzioni diverse. Per esempio, supponiamo che un visitatore possa inviare feedback al reparto "Housewares" oppure "Electronics". Ecco come potrebbe apparire questo modulo:

![feedbackform.png](/images/zendesk/00ed0c6e23138a41.png)

Ecco un esempio di HTML del modulo che lo realizza:

```html
<h3>Please leave your feedback below:</h3>
<form action="https://formspree.io/f/{form_id}" method="POST">
   <label>Department:</label>
   <select name="department" required>
      <option value="housewares">Housewares</option>
      <option value="electronics">Electronics</option>
   </select>
   <label>Feedback:</label>
   <textarea name="message"></textarea>
   <label>Your Name:</label>
   <input name="name" type="text" required/>
   <label>Your Email: </label>
   <input name="email" type="email" required/>
   <button>submit</button>
</form>
```

L'istruzione select evidenziata sopra crea un menu a tendina in cui l'utente può scegliere "Housewares" oppure "Electronics". 

### Aggiungere regole di instradamento per il menu a tendina

Supponiamo che tu voglia inviare le notifiche al reparto appropriato in base alla scelta del visitatore dal campo input a tendina. Per fare ciò:

1.  Per prima cosa assicurati di _**inviare il modulo una volta includendo il campo input pertinente**_. In questo caso, dobbiamo inviare il modulo con l'input select "department". In questo modo Formspree viene a conoscenza del nuovo campo, così che possa essere usato nella creazione delle regole.  
      
    
2.  Crea una nuova regola per una delle opzioni del campo input. Per prima cosa, imposta il Target Email sul destinatario appropriato, ad esempio "housewares@example.com". Poi scegli "When a field contains a keyword" come condizione. Successivamente, seleziona il campo input da verificare per la corrispondenza. In questo caso, il campo "department". Poi inserisci il valore appropriato dall'input select. In questo caso useremo "housewares". Infine fai clic su Save.  
      
    ![Rules\_Screenshot3.png](/images/zendesk/55704c88135dbba0.png)  
      
    A questo punto, la seconda regola corrisponderà se, all'interno del campo "department", è presente la parola "housewares". Quando la regola corrisponde, verrà inviata una notifica al Target Email, "housewares@example.com".  
      
    
3.  Ora crea una regola per la seconda opzione, simile alla regola precedente. In questo caso, invieremo una notifica a "electronics@example.com" quando il campo "department" contiene "electronics".

A questo punto, quando arriva un nuovo invio, corrisponderà alla prima o alla seconda regola, a seconda che il campo "department" contenga la parola "housewares" oppure "electronics". Questo farà sì che venga inviata un'email di notifica a "housewares@example.com" oppure a "electronics@example.com". 

## Instradare le email con una casella di spunta

E se avessi un modulo con una casella di spunta e volessi inviare una notifica via email solo quando la casella è selezionata? Per esempio, supponiamo che il tuo modulo abbia questa casella di spunta:

![Screen\_Shot\_2019-04-26\_at\_3.21.58\_PM.png](/images/zendesk/8bdea8d188d50d6e.png)

Ecco un esempio di HTML del modulo per la casella di spunta qui sopra:

```html
<label>
    <input type="checkbox" name="urgent" value="yes"> 
    My problem is urgent! 
 </label>
```

### Aggiungere regole di instradamento per la casella di spunta

Per inviare una notifica via email solo quando la casella di spunta è selezionata, aggiungi una regola usando la condizione "When a field is not empty". Poi seleziona il campo appropriato per la casella di spunta. Per esempio:

![Rules\_Screenshot4.png](/images/zendesk/4f2b508f558fdc9c.png)

## Inviare a più destinatari

Se vuoi semplicemente inviare un'email a più destinatari, puoi farlo aggiungendo più regole usando la condizione "Always". Ecco un esempio di modulo che invia email di notifica sia a "electronics@example.com" che a "housewares@example.com":

![Rules\_Screenshot5.png](/images/zendesk/50b2a5e8b5d78a8b.png)

## Intercettare lo spam con un campo honeypot personalizzato

Un campo honeypot è un campo speciale che probabilmente solo gli spammer compileranno. Gli spammer usano spesso bot che analizzano l'HTML di una pagina web e compilano automaticamente qualsiasi modulo rilevato. Tuttavia, quando un modulo viene visualizzato, è possibile usare JavaScript e CSS per nascondere un campo ai visitatori umani, ma non ai bot. Quando un modulo viene inviato con un tale campo compilato, può essere categorizzato con sicurezza come spam. 

Formspree ti permette di implementare un honeypot con il [campo `_gotcha`](/articles/building-your-form/honeypot-spam-filtering/). Tuttavia, alcuni spammer conoscono questo campo speciale e lo hanno incorporato nella logica dei loro bot.

Per creare un honeypot che nessuno spammer possa prevedere, puoi creare il tuo campo honeypot personalizzato con le regole. Per prima cosa, aggiungi un campo al tuo modulo e nascondilo in modo che nessun visitatore umano lo compili. Per esempio, potresti usare il seguente input del modulo.

```html
<input type="text" name="myhoneypot" class="myclass">
```

**Assicurati di scegliere qualcosa di unico al posto di "myhoneypot".** Se ogni modulo ha un campo honeypot diverso, gli spammer non possono prevedere quale campo sia l'honeypot.

**Usa il tuo CSS personalizzato per nascondere il campo.** Anche in questo caso, l'importante è non usare un approccio standardizzato per nascondere il campo honeypot, così che sia più difficile per gli spammer rilevarlo ed evitarlo. Come esempio, ecco un po' di CSS per nascondere il campo qui sopra:

```css
.myclass { opacity: 0; position: absolute; }
```

Infine, puoi aggiungere una regola che contrassegni un campo come spam quando il campo honeypot viene compilato. Scegli "Tag" nella colonna "Do" e seleziona "Spam" per contrassegnare l'invio come spam. Poi scegli il trigger "When a field is not empty" e seleziona il nome del tuo campo honeypot.

![Rules\_Screenshot6.png](/images/zendesk/ced665edcaea4ae5.png)

## Aggiungere regole antispam personalizzate

La maggior parte dello spam dovrebbe essere rilevata dai filtri automatici di Formspree. Tuttavia, se ricevi spam e sei in grado di individuare pattern nel contenuto dello spam, puoi anche creare le tue regole antispam personalizzate. Queste regole possono essere particolarmente utili se stai temporaneamente ricevendo un grande volume di spam e devi intervenire immediatamente.

Per creare regole antispam personalizzate, usa l'azione "Tag" nella colonna "Do" e scegli "Spam" per iniziare a contrassegnare i messaggi come spam. Poi scegli "When a field contains a keyword" per il trigger e seleziona un campo che contiene contenuto di spam. Infine, includi la parola chiave o le parole che compaiono frequentemente nel messaggio di spam.

![Rules\_Screenshot7.png](/images/zendesk/1118e2e62873eaab.png)

Se ricevi costantemente un grande volume di spam e i filtri automatici non lo categorizzano automaticamente, contattaci con una [richiesta di supporto](https://help.formspree.io/hc/en-us/requests/new).

## Reindirizzare in modo condizionale in base ai dati del modulo

Quando un visitatore completa un modulo, a volte vuoi fornire un messaggio di "ringraziamento" diverso a seconda dei dati del modulo. Per esempio, se un visitatore richiede un incontro di follow-up, potresti volerlo reindirizzare a una pagina di prenotazione di un calendario. 

Per fare ciò, scegli l'opzione "Redirect" nella colonna "Do" e inserisci un URL completo dove vuoi far arrivare i clienti. Poi crea un trigger usando un input a casella di spunta o a tendina, in modo simile alle sezioni [casella di spunta](#h_2297663c-f516-41fb-90fe-37aff660b20a) o [menu a tendina](#h_7ff44e3c-0539-4673-88fc-2608537560cd) qui sopra. Ora, quando gli utenti compilano il tuo modulo, verranno reindirizzati in modo condizionale alla pagina che specifichi.

![Rules\_Screenshot8.png](/images/zendesk/448d6a82933c2c17.png)

Puoi anche usare l'azione "Redirect" con la condizione "Always" per sovrascrivere il comportamento di reindirizzamento predefinito di Formspree. 

## Attivare con altre condizioni

Finora abbiamo discusso l'aggiunta di regole di instradamento usando le condizioni "Always", "When a field contains a keyword" e "When a field is not empty". 

Per questi ultimi due tipi di condizione, esistono anche le condizioni negative: "When a field is empty" e "When a field doesn't contain a keyword". 

Ecco un elenco di tutte le condizioni e alcuni scenari in cui potresti volerle usare:

-   **Always**: vuoi inviare una notifica via email per ogni invio. Utile per aggiungere più destinatari.
-   **When a field is not empty**: hai una casella di spunta o un input di testo. Utile negli scenari in cui vuoi dare seguito solo a determinati visitatori.
-   **When a field is empty**: utile per le caselle di spunta di opt-out. Per esempio, potresti voler inviare una notifica solo per i visitatori che non selezionano "Please do not contact me". Altrimenti, lascia che il loro feedback vada direttamente all'archivio, per essere esportato in seguito.
-   **When a field contains a keyword**: hai un input a tendina o di testo. Utile per instradare a destinatari diversi in base al valore. Può anche essere usato per inviare una notifica quando è presente una particolare parola chiave. Per esempio, potresti voler avvisare il reparto fatturazione se un campo messaggio contiene la parola "refund".
-   **When a field doesn't contain a keyword**: può essere usato nelle regole antispam personalizzate per evitare che certi messaggi vengano contrassegnati come spam.
