I form

SPIP permette una grande interazione del sito con i visitatori; perciò, esso propone numerosi form sul sito pubblico, che permettono sia la gestione degli accessi all’area riservata che di autorizzare l’aggiunta di messaggi e firme.

I form si inseriscono nei modelli di layout con un semplice segnaposto; successivamente SPIP si fa carico di gestire il comportamento (spesso complesso) di questi form in funzione dell’ambiente e delle configurazioni effettuate all’interno dell’area riservata.

Funzioni interattive

-  #FORMULAIRE_RECHERCHE

È il form del motore di ricerca integrato in SPIP. Viene discusso nell’articolo sui cicli di ricerca.

-  #FORMULAIRE_FORUM

Il #FORMULAIRE_FORUM gestisce l’interfaccia che permette di postare i messaggi nei forum pubblici. Interessa quindi essenzialmente il ciclo FORUMS ma può essere utilizzato in qualsiasi ciclo che accetti un forum.

È evidente che il form dipende dalla scelta se esso debba essere moderato a posteriori, a priori o accessibile su abbonamento.

[SPIP 1.8.2] Per default, dopo aver inviato il messaggio, il visitatore viene rimandato alla pagina dell’elemento [1] al quale ha risposto. È possibile decidere di rimandare il visitatore verso un’altra pagina, passando a questo segnaposto un parametro nell’URL. Per esempio:

  • [(#FORMULAIRE_FORUM{'spip.php?page=ringraziamento'})] rimanderà verso la pagina spip?page=ringraziamento.

Un po’ di storia: Per le versioni precedenti a [SPIP 1.9], si sarebbe dovuto scrivere ringraziamento.php3.

Fino alla versione [SPIP 1.9], i file di SPIP avevano un’estensione in .php3 e non in .php.

  • [(#FORMULAIRE_FORUM{#SELF})] rimanderà alla pagina in cui si trova il form del forum (vedi il segnaposto #SELF).

Nel caso (molto specifico) in cui è stata autorizzata la presenza di parole chiave nei forum pubblici, si può affinare il comportamento di questo form con l’uso di variabili di personalizzazione.

-  #FORMULAIRE_SIGNATURE

Il segnaposto #FORMULAIRE_SIGNATURE visualizza un form che permette ai visitatori di firmare le petizioni associate agli articoli. Questo segnaposto viene utilizzato, quindi, all’interno di un ciclo ARTICLES.

La firma delle petizioni impone una conferma dei firmatari via email. Pertanto, questo form è utile unicamente se il proprio fornitore di hosting autorizza l’invio di email tramite PHP.

-  #FORMULAIRE_SITE

Il segnaposto #FORMULAIRE_SITE, introdotto con [SPIP 1.4], mostra un’interfaccia che permette ai visitatori del sito di proporre l’inserimento di siti in repertorio. Tali siti appariranno come « proposti » nell’area riservata, in attesa di una convalida da parte degli amministratori.

Questo form viene visualizzato solo se è stata attivata l’opzione "Gestisci un repertorio di siti Web" nella Pagina di configurazione del sito nell’area riservata, e solo se alla voce "Chi può proporre un nuovo sito da inserire in repertorio?" è stato impostato "i visitatori del sito pubblico".

Poiché in SPIP i siti in repertorio sono legati alle rubriche, il segnaposto #FORMULAIRE_SITE può essere inserito esclusivamente all’interno di un ciclo RUBRIQUES.

-  #FORMULAIRE_ECRIRE_AUTEUR

[SPIP 1.4] Inserito all’interno di un ciclo AUTEURS, questo segnaposto visualizza il form che permette di inviare un’email all’autore. Ciò permette di scrivere agli autori senza divulgare l’indirizzo email sul sito pubblico.

[SPIP 1.8.2] Inserito all’interno di un ciclo ARTICLES, questo form permette di inviare un’email a tutti gli autori dell’articolo.

[SPIP 1.8.2] Inserito in un ciclo FORUMS, questo form permette di inviare un’email direttamente all’autore del messaggio, se l’autore del messaggio si è registrato sul sito.

Registrazione, autenticazione...

-  #FORMULAIRE_INSCRIPTION

Probabilmente il segnaposto più importante, #FORMULAIRE_INSCRIPTION visualizza il form che permette la registrazione di nuovi redattori. Mostra l’interfaccia di registrazione solo se è stata autorizzata la registrazione automatica dal sito pubblico (altrimenti questo segnaposto non visualizza assolutamente nulla).

La registrazione impone l’invio di informazioni di connessione (login e password) via email; pertanto, questo form funziona soltanto se il proprio hoster autorizza l’invio di email tramite PHP.

-  [(#FORMULAIRE_INSCRIPTION{forum})]

È l’equivalente del segnaposto precedente, per la registrazione dei visitatori, chiamati a scrivere nei forum (riservati ai visitatori registrati), opzione che viene attivata nell’area riservata nel menu Configurazione del sito/Interattività/Modo di funzionamento predefinito dei forum pubblici.

Dopo la conferma il visitatore riceve un messaggio: “Il vostro nuovo identificativo è stato inviato per email.”

-  #LOGIN_PRIVE

SPIP 1.4 Ugualmente importante (forse anche di più), questo segnaposto mostra il form di accesso all’area riservata (la sezione « /ecrire » del sito).

Importante: questo segnaposto deve assolutamente essere presente nel modello chiamato dalla pagina spip.php?page=login, cioè dal modello chiamato login.html. In effetti, all’atto dell’accesso diretto all’indirizzo « /ecrire » del proprio sito, SPIP ridirige verso spip.php?page=login.

Un po’ di storia: Per le versioni precedenti a SPIP 1.9, si tratta del modello chiamato dalla pagina spip_login.php3, ovvero dal modello chiamato spip_login.html se non è stata variata l’impostazione predefinita

In genere, fino a SPIP 1.9, gli URL delle pagine generate da SPIP avevano la forma http://miosito.net/xxx.php3 e non http://miosito.net/spip.php?page=xxx.

-  #LOGIN_PUBLIC

SPIP 1.4 Ha un utilizzo molto più specifico poiché il segnaposto #LOGIN_PUBLIC visualizza un form che permette ai visitatori del sito di identificarsi pur restando sul sito pubblico (senza entrare nell’area riservata). Questo segnaposto serve soprattutto ad autenticare i visitatori per i siti che propongono dei forum moderati su abbonamento. Esso può servire anche come « primo mattone » per limitare l’accesso ad alcuni contenuti sul sito pubblico: tuttavia, ciò richiede una manipolazione complessa e prima che possa essere utilizzato facilmente da chiunque dovrà essere sviluppato ulteriormente e si dovranno scrivere dei tutorial completi; nondimeno, un esempio di utilizzo avanzato viene riportato sotto.

Il #LOGIN_PUBLIC, di default, "esegue un ciclo su se stesso", ovvero il form ritorna sulla pagina dove si trova. Tuttavia, è possibile indicare una pagina verso cui condurre il form, nella forma:

[(#LOGIN_PUBLIC|spip.php?page=miapagina)]

Un po’ di storia: Nelle versioni precedenti a SPIP 1.9 si sarebbe dovuto scrivere miapagina.php3 e non spip.php?page=miapagina

In genere, fino a SPIP 1.9, gli URL delle pagine generate da SPIP avevano la forma http://miosito.net/xxx.php3 e non http://miosito.net/spip.php?page=xxx.

Se il sito offre la registrazione automatica all’area riservata, i dati di connessione all’area pubblica sono identici a quelli dell’area riservata; in altre parole, i dati inviati all’utente per essere identificato nell’area pubblica gli permetteranno di accedere anche all’area riservata. Se, invece, la registrazione automatica all’area riservata è stata disabilitata, è obbligatorio avere almeno un articolo sul quale i forum siano impostati in modo "su abbonamento" al fine di attivare questo segnaposto; fatto questo, SPIP potrà fornire informazioni di connessione per il sito pubblico senza accesso all’area riservata.

-  #URL_LOGOUT [SPIP 1.5] fa da pendant a #LOGIN_PUBLIC; dà un URL che permette al visitatore autenticato di sconnettersi.

[SPIP 1.8.2] È possibile passare un parametro a questo segnaposto per specificare l’indirizzo di reindirizzamento dopo la sconnessione. Per esempio, [(#URL_LOGOUT{spip.php?page=sommaire})] rimanderà alla home page.

Un po’ di storia: Nelle versioni precedenti a SPIP 1.9 si sarebbe dovuto scrivere [(#URL_LOGOUT{sommaire.php3})] e non [(#URL_LOGOUT{spip.php?page=sommaire})]

In genere, fino a SPIP 1.9, gli URL delle pagine generate da SPIP avevano la forma http://miosito.net/xxx.php3 e non http://miosito.net/spip.php?page=xxx.

Riportiamo un esempio semplice ma completo di utilizzo di questi due segnaposti. È necessario passare attraverso una manciata di PHP per testare la variabile $auteur_session, che indica che un autore è identificato o meno. In caso positivo si può recuperare (cioè testare) il suo status, il suo login, ecc., tramite $auteur_session['statut']....

Notare che il contenuto è "sicuro" solo su questo modello. Nel caso che il proprio modello "stampare questo articolo", per esempio, non effettua la verifica con $auteur_session, chiunque (compresi i motori di ricerca!) potranno avere accesso a questo importante contenuto che si desidera proteggere.

<?php if ($auteur_session) { ?>

Siete autenticati, <a href='#URL_LOGOUT'>cliccate qui per sconnettervi</a>

... qui va il contenuto ad accesso limitato....

<?php } else { ?>

<h2>Questa parte è in accesso limitato</h2>
#LOGIN_PUBLIC

<?php } ?>

Stili

È possibile modificare ampliamente l’interfaccia grafica dei form usando i fogli di stile. Vedere: «Quanto sono belli i miei form!».

Note

[1articolo, rubrica, breve, sito o forum

Autore Fausto Barbarito Publié le : Mis à jour : 21/03/23

Traductions : عربي, català, Deutsch, English, Español, français, italiano, Nederlands