Questo file è altrettanto importante perché restituisce le informazioni sul template, sull'autore e sui file che servono a far funzionare il template, per esempio i file php e le immagini da inserire.
Le prime righe del file sono le seguenti:
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE install PUBLIC "-//Joomla! 1.5//DTD template 1.0//EN" "http://dev.joomla.org/xml/1.5/template-install.dtd">
In seguito è composto da voci diverse:
- version: per indicare la versione di Joomla utilizzata;
- name: nome del template che vogliamo creare;
- creationDate: data di creazione del template;
- author: il nostro nome, o più in generale il nome dell'autore;
- authorEmail: eventuale indirizzo e-mail dell'autore del template;
- authorUrl: eventuale indirizzo del sito web dell'autore del template;
- copyright;
- license: tipo di licenza per il template;
- version: versione del template(per esempio 1.0.0);
- description: una (breve) descrizione del template;
- files: qui abbiamo l'elenco di tutti i file necessari per il template. Ogni voce dei file contiene il percorso completo a partire dalla directory del template. Quando si va ad installare il template il codice di installazione utilizza le informazioni qui presenti per la memorizzazione dei file durante la fase di installazione. Saranno compresi, ovviamente, index.php, templateDetails.xml e template.css;
- positions: indica le posizioni definite nel template (se si guarda il codice del file index.php sono per esempio left, right, top e footer);
Alcuni di questi campi sono obbligatori (come quello con l'elenco dei file), altri possono essere lasciati vuoti. Un esempio completo di questo file è il seguente:
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE install PUBLIC "-//Joomla! 1.5//DTD template 1.0//EN" "http://dev.joomla.org/xml/1.5/template-install.dtd"> <install version="1.5" type="template"> <name>SimpleTemplate</name> <creationDate>05/2010</creationDate> <author>ventus85</author> <authorEmail></authorEmail> <authorUrl>http://www.ventus85.com</authorUrl> <copyright></copyright> <license>GNU/GPL</license> <version>1.0.0</version> <description>Esempio di template per Joomla</description> <files> <filename>index.php</filename> <filename>templateDetails.xml</filename> <filename>css/template.css</filename> <filename>css/ie7only.css</filename> <filename>css/ie8only.css</filename> <filename>images/header.png</filename> <filename>images/button.png</filename> <filename>images/menu.png</filename> </files> <positions> <position>left</position> <position>right</position> <position>top</position> <position>footer</position> </positions> </install>
Anche se il tag del file xml si chiama position, esso indica l'elenco dei blocchi ma non la loro posizione. La posizione dei diversi contenitori è infatti definita nel file css. I blocchi di solito hanno dei nomi standard, che possono rappresentare una posizione (che, ripeto, è da definire nell'altro file) e possono essere:
- banner;
- left;
- right;
- top;
- breadcrumb;
- user1;
- user2;
- user3;
- user4;
- footer;
- syndicate;
Nomi di questo genere aiutano nel creare e poi, successivamente, modificare il template e ad assegnare le posizioni ai moduli. Per esempio in left o in right possiamo metterci i menù, nel top il modulo per la ricerca e così via. Nulla ci vieta di inventarne degli altri nè il loro numero, anche se è consigliato usare poche posizioni per non complicare troppo il template e la sua interpretazione da parte dei browser.
Osservazione: a volte i template possono contenere i file di lingua, nel caso sia necessario abilitare la traduzione dei testi statici del modello. In tal caso dobbiamo inserire anche delle righe di codice come le seguenti:
<languages> <language tag="en-GB">it-IT.tpl_SimpleTemplate.ini</language> </languages> <administration> <languages folder="admin"> <language tag="en-GB">it-IT.tpl_SimpleTemplate.ini</language> </languages> </administration>