Come ti stampo l'articolo |
|
|
|||
|
Autore :
Mario Luciani » Questo articolo è stato letto: 4834 volte » |
|||||
| Guide - Joomla 1.5 | |||
|
Tempate overridingLe versioni attuali di Joomla sono attente a separare il contenuto dalla formattazione e dalla struttura del sito. Nelle condizioni standard la struttura di un sito gestito in Joomla viene gestita dal core che provvede al rendering dei componenti e dei moduli. Il template provvede alla formattazione grafica tramite opportuni fogli di stile css ma provvede anche a stabilire le posizioni disponibili per ospitare i moduli. Di solito per fare un buon template può essere sufficiente progettare un buon foglio di stile ed un buon file index.php. Altre volte le necessità impongono di modificare il comportamento standard di Joomla ma, con la versione attuale, ciò può essere realizzato senza toccare il codice interno di Joomla (il core).Le tecniche note come template overriding non sono più una novità anzi costituiscono un bagaglio tecnico che ogni web designer deve avere nel suo armamentario. Non voglio qui spiegare queste tecniche rimandando alla grande quantità di articoli presenti sulla rete. Qui discutiamo solamente il caso in questione e cioè la ridefinizione della parte del core che gestisce la versione stampabile di un articolo. La pagina stampabileLa versione stampabile dell'articolo può essere controllata modificando il file /templates/$template/component.php Quando l'utente clicca sull'icona di stampa joomla controlla se il file esiste. Se il file esiste esso viene eseguito per realizzare la funzionalità in esso codificata; se invece il file non esiste allora viene chiamato il gestore standard di Joomla che provvede in modo autonomo ad attuare la procedura. Come primo passo quindi creiamo il file component.php nella cartella principale del template. Questo file agisce come il file index.php del template e consente la completa personalizzazione dell'aspetto della pagina prodotta come versione stampabile dell'articolo, ivi comprese eventuali posizioni di moduli come per esempio banner pubblicitari oppure specifici fogli di stile. Una versione semplice del file può essere la seguente:<html> Viene creato un normale header per il sito, vengono caricati i css general.css e quello specifica del template template.css e quindi, nel blocco BODY, viene posizionato il contenuto vero e proprio dell'articolo (e dei messaggi). Personalizzare la paginaPer personalizzare la pagina basta agire su questo file. E' possibile inserire uno specifico foglio di stile oppure stabilire posizioni di blocchi che ospitino banner pubblicitari ad hoc per la pagina stampabile.Nel mio caso avevo da inserire una riga che richiama uno scripts js per il rendering grafico di equazioni scritte in LaTeX (ma gli usi possono essere i più vari). Il rendering avviene in sede client ma mentre la modifica sul file index.php del template sortiva buoni effetti sul sito questa non agiva quando l'utente chiedeva la versione stampabile della pagina. Con questo piccolo trucco ho risolto in problema. AttenzioneSe nella cartella HTML de template ci sono altre modifiche al comportamento di joomla tramite template overriding, occorre prestare attenzione per evitare conflitti e sovrapposizione di formattazioni. Il mio consiglio e quello di mettere nel file component.php lo stretto necessario lasciando che il template faccia il suo lavoro normalmente.InfinePer chi vuole approfondire meglio la tematica metto il link diretto alle docs di joomla.org di cui ho detto all'iniziohttp://docs.joomla.org/Customizing_the_print_pop-up Potete vedere all'opera il risultato sul mio sito personale (niente di clamoroso). In fondo alla home c'è un menu Risorse con una pagina di test. Una volta aperto l'articolo se cliccate sull'icona della stampante la formula matematica che appare dovrebbe essere renderizzata bene sia nella versione normale che in quella stampabile. ImportanteVale il solito consiglio: prima di fare qualsiasi modifica fatevi una copia di backup del sito.Mario Luciani www.marioluciani.it
Articoli più recenti:
|




