UK Prospective prix sildenafil andorre Diabetes Study UKPDS Group. Mais on acheter viagra petite quantité n a plus aucun intérêt à rester en son sein. A achat viagra en ligne france 71 ans, il a publié 22 ouvrages. Renouait acheter viagra mexique des liens qu il savait devoir rompre. Cette enquête levitra générique 50mg comporte également un volet politique. La achat viagra shop online org France a très bien réagi par rapport à l héroïne. Vincent Lambert viagra prix belgique correspond à un état végétatif. Cette recherche acheter du vrai viagra en ligne nous pourrit la vie, explique-t-il. Debuiche achat viagra en pharmacie s est lancé pour la communauté . Et là vente lasix canada encore, les résultats sont éloquents. Un étiquetage www.synthroid non conforme, selon M. Le cialis france monde soignant en prend pour son grade. Je suis viagra prix fr pleinement satisfait de ce système. Du coup, acheter mifegyne et cytotec il ne se passe plus rien du tout. Et dans levitra générique france l art du contournement, M. Ce prix du viagra-levitra-cialis qui ne signifie pas qu il ne se protège pas. Internazionalizzare i modelli - SPIP
SPIP

[ar] [ast] [bg] [br] [ca] [co] [cpf] [cs] [da] [de] [en] [eo] [es] [eu] [fa] [fon] [fr] [gl] [id] [it] [ja] [lb] [nl] [oc] [pl] [pt] [ro] [ru] [sk] [sv] [tr] [vi] [zh] Espace de traduction

Download

Internazionalizzare i modelli

Marzo 2005 — mis à jour le : Luglio 2005

Tutte le versioni di questo articolo:

L’internazionalizzazione dei modelli, discussa in questo articolo, è disponibile dalla versione SPIP 1.7.


Perché creare modelli multilingue?

Quando i documenti vengono messi online, SPIP adatta alcune informazioni "automatiche" nella lingua desiderata. In particolare, le date sono mostrate nella lingua del sito o di un articolo, o di una rubrica, i form sono mostrati nella lingua corrispondente (per esempio l’interfaccia per inviare messaggi al forum)... Tutto ciò è già tradotto in SPIP.

Tuttavia non è sufficiente: i webmaster inseriscono nei loro modelli un certo numero di informazioni, che descrivono soprattutto i principi di navigazione nel sito. È necessario, per esempio, visualizzare i testi dello stile "Mappa del sito", "Rispondi a questo articolo", "Articoli dello stesso autore", "Nella stessa rubrica"... Per un sito in una sola lingua questi elementi sono facili da inserire: li si mette così come sono nel codice HTML dei modelli. Il problema si pone quando il sito è multilingue: sotto un articolo in italiano si vuole mostrare "Rispondi a questo articolo", ma sotto un articolo in inglese si deve mostrare un altro testo ("Comment on this article").

[SPIP 1.7.2] propone tre metodi per gestire gli elementi di testo differenti secondo la lingua:

— (1) un metodo è mettere gli elementi di testo dei modelli in file lingua (un file diverso per ciascuna lingua usata nel sito), disgiunti dai modelli; un modello unico (per esempio article.html che chiama, in base ai codici definiti dal webmaster, questi elementi di testo in funzione della lingua utilizzata; in tal modo, lo stesso modello article.html può visualizzare automaticamente il testo "Rispondere all’articolo" oppure "Comment on this document" a seconda della lingua dell’articolo. Questo metodo è vivamente consigliato: esso offre la maggiore flessibilità, facilita gli aggiornamenti del sito, (si lavora con un modello unico che gestisce automaticamente più lingue), e in futuro saranno aggiunti a SPIP degli strumenti per facilitare il lavoro collettivo di traduzione dell’interfaccia del proprio sito (più amministratori, che parlano ciascuno una lingua differente, potranno tradurre l’interfaccia di uno stesso sito dall’area riservata, senza avere bisogno di intervenire sui file dei modelli);

— (2) un metodo più veloce e tecnicamente molto semplice si basa sulla creazione di file di modelli diversi per ciascuna lingua. Con questo metodo si crea un file article.html per gestire gli articoli in italiano e un file article.en.html per gli articoli in inglese (nota: article.html gestisce in realtà tutte le lingue eccetto l’inglese). Questo metodo è sconsigliato se il sito utilizza numerose lingue e/o se si utilizzano modelli differenti a seconda delle rubriche. D’altronde, esso è vantaggiosamente sostituito in tutti i casi dal metodo 3 descritto sotto:

— (3) il metodo dei "blocchi multilingue", introdotto da [SPIP 1.7.2], funziona bene sia per i contenuti che per i modelli. È sufficiente mettere nel modello il seguente codice:

e la frase verrà visualizzata nella lingua voluta. Benché questo sistema sia molto flessibile, esso ha comunque dei limiti quando il numero di lingue è importante, e quando si desidera che diversi traduttori intervengano nel sito (in effetti è necessario che essi possano modificare il modello, ciò che il metodo dei file lingua permette di evitare).

1. Metodo dei file lingua

Il principio dei file lingua consiste nell’inserire in un unico modello un codice, che corrisponde a un elemento di testo (una "stringa") per ciascuna lingua; il codice non varia tra le diverse lingue, solo il testo viene tradotto.

Per esempio, possiamo decidere che il codice prelevafile corrisponda:
— in italiano, alla stringa "preleva il file",
— in inglese, alla stringa "download this file",
— in spagnolo, alla stringa "descargar este archivo",
— e così via.

Nel file di modello degli articoli (un solo file gestisce tutte le lingue), article.html, è sufficiente inserire il codice (da notare la sintassi):

Quando l’articolo viene visualizzato, questo codice viene sostituito dalla traduzione nella lingua dell’articolo.

Per esempio, nel modello article.html, inseriamo nel ciclo che mostra i documenti associati all’articolo il codice seguente:

Se l’articolo in questione è in italiano, ciò mostrerà:

<a href="/IMG/jpg/miodocumento.jpg">preleva il file</a>

se l’articolo è in inglese, invece:

<a href="/IMG/jpg/miodocumento.jpg">download this file</a>

e via dicendo. Un unico modello, contenente un codice unico, visualizza il testo tradotto in utte le lingue utilizzate sul sito.

-  Utilizzare testi già tradotti

Per facilitare il lavoro dei webmaster, SPIP fornisce un insieme di stringhe già tradotte (dai traduttori di SPIP). Utilizzando queste stringhe, che corrispondono a elementi di testo spesso utilizzati sui siti Web, il webmaster può realizzare rapidamente un’interfaccia che funzioni in più lingue, anche quelle che egli stesso non conosce.

Le stringhe a disposizione possono essere elencate nell’area riservata: nella sezione "Gestione delle lingue" della parte "Amministrazione del sito", poi cliccare sulla linguetta "File lingua". Basta solo scegliere i codici desiderati per realizzare il proprio modello.

PNG - 9.8 Kb
I file lingua nell’area riservata

Esempio: un webmaster vuole realizzare l’interfaccia di un sito in italiano, spagnolo e arabo, ma non parla né lo spagnolo né l’arabo. Inserendo nei propri modelli i codici forniti con SPIP egli non deve preoccuparsi di avere le traduzioni in spagnolo e in arabo, poiché queste sono già state effettuate dai traduttori di SPIP; quindi, realizzando l’interfaccia in italiano con i codici forniti da SPIP egli sa che le sue pagine verranno visualizzate immediatamente anche in spagnolo e in arabo.

Se in seguito egli vuole aggiungere degli articoli in polacco, essi verranno mostrati subito con gli elementi di testo tradotti in polacco, senza che il webmaster debba intervenire nuovamente.

Un altro vantaggio di questo metodo: esso facilita la creazione di modelli "da distribuire" immediatamente multilingui. I modelli realizzati con questo metodo possono essere utilizzati da subito in tutte le lingue in cui è stato tradotto SPIP.

Da un punto di vista tecnico, gli elementi di testo forniti nel pacchetto di SPIP sono memorizzati nei file lingua "public":
— /ecrire/lang/public_fr.php3 contiene le stringhe in francese,
— /ecrire/lang/public_en.php3 in inglese
— eccetera.

-  Creare codici personalizzati

È anche possibile creare i propri codici, corrispondenti a stringhe che si desidera aggiungere.

In tal caso è necessario creare dei file lingua personali, sul modello dei file public.... Per creare i file personalizzati, nella propria cartella di modelli oppure nella cartella /ecrire/lang si deve installare:

— local_fr.php3 per definire le stringhe in francese,
— local_en.php3 per le stringhe in inglese,
— ...

Storia: Nelle versioni anteriori a [SPIP 1.8], i file lingua personali dovevano essere contenuti solamente nella cartella /ecrire/lang.

Per esempio, potremo creare le seguenti stringhe:
— prelevafile per visualizzare "Preleva l’ultima versione",
— cosenuove per visualizzare "Ultime modifiche".

Con questo metodo, nei modelli si inseriscono i codici <:prelevafile:> e <:cosenuove:>, che mostreranno le traduzioni corrispondenti, così come sono definite nei file local_...php3.

Vogliamo sottolineare che i codici sono puramente soggettivi: è il webmaster che li sceglie. Naturalmente noi raccomandiamo di scegliere dei codici che possono essere ricordati facilmente (invece che usare numeri, per esempio). Come accade spesso nei linguaggi informatici, è preferibile utilizzare lettere esclusivamente dell’alfabeto latino e senza accenti...

I file lingua contengono le diverse traduzioni dei codici che si utilizzano; essi sono file PHP contenenti ognuno una tabella che associa i codici con le stringhe corrispondenti in ogni lingua.

Per esempio, essi possono contenere:

-  Versione francese:

-  Versione catalana:

La costruzione è la seguente:

— all’inizio del file:

— alla fine del file:

— la parte che ognuno deve arricchire è costituita da più righe di definizioni del tipo:

N.B. Ogni riga di definizione deve terminare con una virgola, eccetto l’ultima riga.

N.B.2 Il testo della stringa da tradurre deve essere convertito in codici HTML (i caratteri accentati, per esempio, sono convertiti con gli equivalenti HTML, del tipo &eacute;).

Gli apostrofi all’interno della stringa devono essere escaped, ossia preceduti da un backslash. Per esempio, la stringa "all’interno" deve essere scritta: all\'interno.

Nota: tra breve si prevede di includere uno strumento che permette di gestire e di creare i propri file lingua senza dover modificare "manualmente" i file PHP. Tale strumento faciliterà anche l’uso dei caratteri "speciali" (caratteri accentuati, caratteri negli alfabeti non occidentali, escape degli apostrofi...), come pure la collaborazione di molte persone al processo di traduzione dell’interfaccia del sito pubblico.

Attualmente, lo strumento che permette la gestione della traduzione delle stringhe di testo non viene fornito direttamente con SPIP, e il suo utilizzo molto generico (noi lo usiamo per tradurre tutta l’interfaccia di SPIP, e non solamente dei file lingua del tipo local...php3) lo rende un po’ complesso. Questo programma, trad-lang, che ci serve a tradurre il software SPIP, il sito spip.net, ecc., è anch’esso disponibile sotto licenza GNU/GPL, ma non è integrato nel pacchetto di SPIP. È possibile scaricarlo, per utilizzarlo sul proprio sito o su altri progetti software. Eventuali migliorie o idee da implementare possono essere discusse sulla lista dei traduttori di SPIP, spip-trad.

2. Un modello per ogni lingua

Il secondo metodo, più accessibile ai webmaster principianti, è quello di creare un modello diverso per ciascuna lingua del sito. Un po’ sullo stesso principio che consiste nel creare modelli specifici per diverse rubriche al fine di ottenere interfacce grafiche differenti.

Vogliamo realizzare un sito in francese (lingua di default), in inglese e in spagnolo. Creiamo tre file di modelli diversi:
— article.html per il francese (in realtà, per tutte le lingue che non hanno un file lingua specifico, vedi sotto),
— article.en.html per l’inglese,
— article.es.html per lo spagnolo.

(Nota: se si pubblica un articolo in tedesco e sul sito non è presente il modello article.de.html, viene utilizzato il modello article.html.)

Importante: affinché siano presi in considerazione i modelli "per lingua" definiti aggiundendo il suffisso .lingua al nome, è obbligatorio che sul sito ci sia la versione "di default".

Quindi, se il file article.html non è presente (si è preferito cancellare quel file e crearne uno tipo article.it.html), i file inglesi e spagnoli non verrano considerati.

Questa regola si può combinare con i nomi di file "per rubriche", e viene preso in considerazione l’ordine seguente:
— article=8.es.html (il modello per gli articoli in spagnolo della rubrica 8, ma non per le eventuali sotto-rubriche),
— article=8.html (il modello per gli articoli della rubrica 8, ma non per le eventuali sotto-rubriche),
— article-2.es.html (il modello per gli articoli in spagnolo della rubrica 2 e delle eventuali sotto-rubriche),
— article-2.html (il modello per gli articoli della rubrica 2 e delle eventuali sotto-rubriche),
— article.es.html (il modello per gli articoli in spagnolo),
— article.html (il modello per gli articoli),
— article-dist.html (il modello per gli articoli fornito con SPIP).

Nota: salvo alcune eccezioni, è obbligatorio utilizzare il codice di lingua dello standard ISO, tipo "es". È possibile consultare un elenco dei codici sul sito della Biblioteca del Congresso degli Stati Uniti (ebbene sì!). Per garantire il massimo della compatibilità i codici ISO a due lettere ("ISO 639-1") hanno la priorità, se esistono, mentre per una definizione più specialistica di una lingua all’interno del ceppo linguistico devono essere usati i codici ISO a tre lettere ("ISO 639-2 T"). Per esempio, il tedesco è rappresentato da "de". Tuttavia, lo standard ISO definisce solamente 182 idiomi sulle 5 000-7 000 lingue parlate attualmente nel mondo; per le lingue che non hanno ancora un codice assegnato è possibile ispirarsi all’elenco proposto dal sito ethnologue.com; per approfondire l’argomento consultare la lista spip-trad.
Semplificarsi la vita. Uno dei metodi di organizzazione molto semplice permessi da SPIP per la gestione di un sito multilingue consiste nell’associare direttamente le lingue alle rubriche (e non articolo per articolo). In tal modo, nel caso in cui gli articoli di una stessa lingua sono raggruppati in una stessa rubrica (oppure per sezioni), ci si può accontentare di creare i modelli specifici per rubrica senza utilizzare, quindi, i nomi di file per lingua.

Con questo metodo se tutti gli articoli in lingua spagnola sono raggruppari nella rubrica 8 (e sotto-rubriche), possiamo nominare il file adattato allo spagnolo rubrique-8.html invece che rubrique.es.html.

I problemi che possono insorgere con questo metodo sono i seguenti:
— il file article-2.html deve essere presente se si desidera poter selezionare article-2.es.html;
— al contrario, non è possibile decidere che article.es.html debba essere utilizzato al posto di article-2.html se non esiste article-2.es.html: la selezione per rubrica ha sempre la priorità rispetto alla selezione per lingua;
— una modifica dell’impaginazione in un modello implica l’obbligo di fare la stessa modifica in tutte le altre versioni,
— deve essere possibile inserire da sé elementi di testo nei file dei modelli, anche se non si comprende la lingua (immaginiamo di dover creare i modelli in arabo se si appena un po’ del proprio dialetto e nemmeno tanto bene l’italiano...).

Per tali motivi questo metodo è destinato a lavorare rapidamente su siti poco complessi (pochi o nessun modello specifico per rubrica) e/o che comportino poche lingue. Ma fin da quando il progetto multilingue diventa un po’ più ambizioso, consigliamo vivamente di lavorare con il metodo dei file lingua.

3. I blocchi multilingue

I blocchi descritti nell’articolo Realizzare un sito multilingue funzionano bene nel testo degli autori o delle parole chiave come pure nei modelli. Attenzione, questi blocchi gestiscono esclusivamente il testo e non i cicli di SPIP!

Per gestire in pochissimo tempo un sito multilingue, è forse, in un primo tempo, il metodo migliore, allo stesso tempo accessibile ed efficace; successivamente, quando il proprio sito è stabilizzato, se si ha bisogno di affinare i propri modelli (per esempio, per aprirli a più lingue; o per distribuirli sotto forma di contrib; o ancora per renderli "professionali"), sarà necessario trasformare i blocchi multilingue in file lingua.


Visualizza il modello di questa pagina Sito realizzato con SPIP | Espace de traduction | Area riservata