Newsletter

SelfComposer permette di creare un form per l'iscrizione degli utenti ad una lista di SelfComposer Newsletter. I dati per questo servizio sono contenuti in Impostazioni > Servizi > Newsletter.

Per inserire un form newsletter in un tema si può utilizzare la funzione newsletter_form() che ritornerà un oggetto di tipo Form che contiene i campi (fields) previsti.

Inserimento di un form per la newsletter

In questo esempio creeremo un form per l'iscrizione alla newsletter con un messaggio di conferma in caso di avvenuta registrazione, e di errore sui campi non validati correttamente.

{% set form = newsletter_form() %} {# Impostiamo la variabile che conterrà il form #}
 
{% if form %} {# se esiste il form... #}
	{% if form.success %} {# Se il form è stato validato con successo mostriamo il messaggio di conferma #}
		<div>
			{{ form.success }}
		</div>
	{% endif %}
 
	{{ form.open() }} {# Apriamo il form #}
		{% for field in form.fields %} {# Cicliamo i campi del form #}
			{% if field.info.type != 'hidden' %} {# Se il campo non è nascosto #}
				<div class="{{ field.error ? 'has-error' : '' }}"> {# Associamo una classe in caso di errore di validazione %}
					{{ field.label({ class: 'control-label' }) }} {# La label associata al campo #}
 
					<div>
						{{ field.input }} {# Il campo #}
 
						{% if field.descr %} {# Se il campo ha una descrizione, questa viene mostrata #}
							<span>{{ field.descr }}</span>
						{% endif %}
 
						{% if field.error %} {# Se c'è un errore viene mostrato un messaggio sotto questo campo #}
							<span>{{ field.error }}</span>
						{% endif %}
 
					</div>
				</div>
			{% endif %}
		{% endfor %}
 
		{{ form.submit() }} {# Mostriamo il bottone di submit #}
 
	{{ form.close }} {# Chiudiamo il form #}
{% endif %}