I segnaposti del sito

I segnaposti che seguono possono essere utilizzati in qualsiasi parte del modello, anche al di fuori dei cicli (fuori “contesto”).

Segnaposti definiti all’atto della configurazione

Il contenuto di tali segnaposti è definito nell’area riservata, durante la configurazione del sito.

-  #NOM_SITE_SPIP è il nome del sito.

-  #URL_SITE_SPIP è l’indirizzo del sito. Esso non comprende il carattere / finale, quindi è possibile creare un link del tipo #URL_SITE_SPIP/sommaire.php3

-  #DESCRIPTIF_SITE_SPIP (da SPIP 1.9) restituisce, come indica il nome, la descrizione del sito che si specifica nella pagina di configurazione generale del sito.

-  #EMAIL_WEBMASTER (da SPIP 1.5) è l’indirizzo del webmaster. Per default SPIP prende l’indirizzo di colui che ha installato il sito (il primo amministratore).

-  #LOGO_SITE_SPIP (da SPIP 1.8, SPIP 1.8.1) visualizza il logo del sito. Da SPIP 1.9 questo segnaposto restituisce il logo del sito 0. Non si deve confondere con il logo della radice, definito anche sotto il nome di logo standard delle rubriche, ovvero quello della rubrica 0.

-  #CHARSET (da SPIP 1.5) è il set di caratteri utilizzato nel sito. Il valore di default è iso-8859-1, il set di caratteri definito « iso-latin ». [1].

-  #LANG (da SPIP 1.7, SPIP 1.7.2): utilizzato al di fuori dei cicli ARTICLES, RUBRIQUES, BREVES e AUTEURS, questo segnaposto visualizza la lingua principale del sito.

-  #LANG_DIR, #LANG_LEFT, #LANG_RIGHT (da SPIP 1.7, SPIP 1.7.2): questi segnaposti definiscono il senso di scrittura della lingua del contesto attuale (per esempio, dell’articolo che è attualmente mostrato). Vedere l’articolo «Realizzare un sito multilingue» per ulteriori informazioni.

-  #MENU_LANG (e #MENU_LANG_ECRIRE) (da SPIP 1.7, SPIP 1.7.2): questi segnaposti creano e visualizzano un menu di lingua che permette al visitatore di scegliere la pagina attuale nella lingua di sua scelta. Il primo segnaposto mostra l’elenco delle lingue del sito; il secondo l’elenco delle lingue nell’area riservata (esso è utilizzato nella pagina di connessione all’area riservata).

Segnaposti di impaginazione

-  SPIP 1.8.2 introduce il segnaposto #DOSSIER_SQUELETTE per potere sviluppare modelli facilmente trasportabili e scambiabili. Permette di ottenere il percorso della cartella nel quale è installato il modello in uso.

Quindi, è possibile inserire i file «accessori» (foglio di stile, Javascript, ecc...) al modello nella cartella del modello e distribuire in tutta semplicità questa cartella per scambiare i modelli. Pertanto, al fine di includere un foglio di stile della cartella del modello si dovrà scrivere, per esempio:

<link rel="stylesheet" href="#DOSSIER_SQUELETTE/miei_stili.css" type="text/css" />

Da SPIP 1.9, il segnaposto #CHEMIN sostituisce e migliora #DOSSIER_SQUELETTE. #CHEMIN{xxx} darà il percorso completo verso il file xxx, sia che esso si trovi alla radice del sito, nella cartella dei modelli, in quella dist/ ecc.

<link rel="stylesheet" href="#CHEMIN{miei_stili.css}" type="text/css" />

-  #PUCE (da SPIP 1.5) che visualizza un elemento puntato;

-  #FORMULAIRE_ADMIN (da SPIP 1.5) è un segnaposto opzionale che permette di mettere i pulsanti degli amministratori (« Rigenera la pagina », ecc.) nei propri modelli. Quando un amministratore visita il sito pubblico, e questo segnaposto è presente, i pulsanti degli amministratori verranno mostrati dove si trova, altrimenti occuperanno il fondo pagina.

Dalla versione spip 1.8 è possibile modificare anche il foglio di stile spip_admin.css per controllare la posizione di tali pulsanti.

-  #DEBUT_SURLIGNE, #FIN_SURLIGNE sono due segnaposti che indicano a SPIP in quale parte della pagina colorare le parole chiave cercate.

Quando l’utente arriva su una pagina a seguito di una ricerca SPIP, le parole chiave cercate vengono colorate automaticamente nella pagina trovata. SPIP non distingue, per esempio, tra un menu, un pezzo di codice Javascrit o il testo dell’articolo: ogni ricorrenza delle parole cercate viene colorata, il che potrebbe essere indesiderabile o addirittura creare problemi negli script. È possibile utilizzare questi due segnaposti per limitare la colorazione a una parte della pagina. Per esempio:

<BOUCLE_articolo(ARTICLES) {id_article}>
<INCLUDE(menu.php3) {id_rubrique}>
#DEBUT_SURLIGNE
<h1>#TITRE</h1>
#CHAPO
#TEXTE
#NOTES
#FIN_SURLIGNE
</BOUCLE_articolo>

-  Il segnaposto #INSERT_HEAD (da SPIP 1.9.1) deve essere inserito tra i tag <head> e </head> dei propri modelli. Esso permette a SPIP, come pure agli eventuali plug-in installati, di aggiungere del contenuto tra questi due tag HTML.

Segnaposti tecnici

Attenzione, questi segnaposti sono indicati agli utenti esperti di SPIP.

-  Il segnaposto #REM non visualizza assolutamente nulla: permette di commentare il codice dei modelli, nel modo seguente: [(#REM) Questo è un commento. ]. Questi commenti non appaiono nel codice generato per le pagine del sito pubblico.

-  #SELF (da SPIP 1.8, SPIP 1.8.1) restituisce l’URL della pagina chiamata, pulita dalle variabili di esecuzione specifiche di SPIP. Per esempio, per una pagina con URL: article.php3?id_article=25&var_mode=recalcul il segnaposto #SELF restituirà: article.php3?id_article=25

Per esempio, per fare un form:

<form action="#SELF" method="get">

Avvertenza: poiché il segnaposto #SELF rappresenta l’indirizzo della pagina, esso non è compatibile con gli <INCLUDE()> (ad eccezione del fatto che il $delais dell’inclusione sia uguale a 0).

-  #URL_PAGE (da SPIP 1.9) restituisce un URL di tipo «page» (cfr. gli URL di SPIP), verso la pagina passata come parametro e che potrà essere utilizzata in un link ipertestuale. Per esempio, per accedere alla pagina generata dal modello toto.html, situato nella propria cartella contenente i modelli, #URL_PAGE{toto} genererà automaticamente l’URL spip.php?page=toto. È permesso un secondo parametro al fine di aggiungere dei parametri all’URL. Esempio #URL_PAGE{toto,id_article=#ID_ARTICLE} genererà l’URL spip.php?page=toto&id_article=XXX.

-  [(#ENV{xxxx,zzzz})] (da SPIP 1.8, SPIP 1.8.1) permette di accedere alla variabile con nome xxxx passata dalla query HTTP. zzzz è una parte opzionale che permette di restituire un valore anche se la variabile xxxx non esiste.

Come impostazione predefinita, il segnaposto #ENV viene filtrato da htmlspecialchars. Qualora si desideri avere il risultato grezzo, è possibile usare l’asterisco "*" come per gli altri segnaposti: [(#ENV*{xxxx})].

Per esempio, per limitare l’elenco degli autori visualizzati:

<BOUCLE_autori(AUTEURS) {nom == #ENV{letterainiziale,^A}}>

Restituisce l’elenco di autori che hanno il nome corrispondente all’espressione regolare passata nell’URL dalla variabile letterainiziale (elenco_autori.php3?letterainiziale=^Z) oppure gli autori il cui nome comincia con una ’A’ se nell’URL non è specificata nessuna variabile.

-  Il segnaposto #SPIP_CRON (da SPIP 1.8, SPIP 1.8.1) è collegato alla gestione dei calcoli che SPIP esegue periodicamente (statistiche, indicizzazione per il motore di ricerca, syndication di siti, ecc.).

Se tale segnaposto non è presente sul sito, il motore di SPIP esegue i calcoli a tempo debito, dopo aver inviato una pagina a un visitatore; sfortunatamente il PHP non permette di chiudere la connessione alla fine della pagina e, in alcuni casi, ciò può portare alcuni visitatori sfortunati (quelli che passando sul sito fanno scatenare una procedura un po’ lunga, in particolare la syndication) a patire una certa lentezza nella visualizzazione della pagina richiesta.

Il segnaposto #SPIP_CRON permette di aggirare il problema: esso ha il ruolo di generare un tag <div> invisibile la cui proprietà « background » punta sullo script spip_background.php3; questo script, a sua volta, esegue i calcoli necessari « in background », e rinvia un’immagine trasparente di 1×1 pixel. Questo trucco permette così di evitare qualsiasi sensazione di « rallentamenti » sviando le eventuali lentezze su uno script secondario.

Da notare: questo segnaposto non è essenziale e la sua presenza o la sua assenza non modificano affatto la regolarità dei calcoli periodici del sito.

-  Il segnaposto #SET{variabile,valore} e il suo gemello #GET{variabile} sono stati introdotti con SPIP 1.9.1. Il segnaposto #SET{xxx,yyy} attribuisce un valore yyy a una variabile xxx propria al modello elaborato. Questo valore può essere recuperato usando il segnaposto #GET{xxx}. Le variabili create in tal modo non vengono trasmesse al modello incluso.

Attenzione! Se si attribuisce un valore a una variabile nella parte opzionale avanti di un ciclo, non sarà possibile recuperare questo valore nel ciclo. Ciò è dovuto al modo usato da SPIP per calcolare i modelli.

-  Il segnaposto #HTTP_HEADER{argomento} (da SPIP 1.9) permette di modificare l’header HTTP della pagina restituita da SPIP. Esempio: #HTTP_HEADER{Content-Type: text/css}. Attenzione! Se si usa questo segnaposto verranno disabilitati i pulsanti di amministrazione. Questo segnaposto non può essere usato nei modelli inclusi che usano la sintassi <INCLURE> o <INCLUDE>.

-  Il segnaposto #EVAL{argomento} (da SPIP 1.9) valuta l’espressione PHP tra parentesi graffe. Per esempio, #EVAL{1+1} mostrerà 2, #EVAL{_DIR_IMG_PACK} visualizzerà il percorso verso il repertorio ecrire/img_pack/. Attenzione, è vivamente consigliato di servirsene con moderazione.


-  Il segnaposto #CACHE{tempo} permette di determinare l’intervallo di tempo allo scadere del quale il modello viene rigenerato. Il tempo è espresso in secondi. È possibile usare calcoli matematici. Per esempio: #CACHE{24*3600}.

Note

[1Cfr. www.uzine.net/article1785.html per una introduzione ai set di caratteri, in attesa di una documentazione più completa di questa funzionalità di SPIP.

Autore Fausto Barbarito Publié le : Mis à jour : 26/10/12

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