ePrometeusCorsoLinuxLinux
testi articoli
Testi Articoli  Download
Home | OpenSource | PhpNuke | Programming | SysAdm | 
CorsoJava è ora Video! Free for all!
Clicca Qui!
PHPNUKE I TEMI
PHPNuke: I temi
Installazione
Analisi di un portale
Creare un nuovo tema
Intestazioni e Piedino
Blocchi e Moduli
Conclusioni


<<< Intestazioni e Piedino >>>
L'intestazione e il piedino sono impostati da themeheader e themefooter. In generale è responsabilità di themeheader creare la  tabella principale del sito. Questa tabella  permette la classica struttura a tre colonne, variandola si possono ottenere altre strutture. Inoltre questa funzione deve anche preoccuparsi di creare i blocchi laterali, o almeno il blocco di sinistra (che deve venire visualizzato prima del modulo al centro) chiamando esplicitamente la funzione blocks(left) . Ecco il codice di esempio:
function themeheader() {
// intestazione
echo "<body bgcolor='#abcdef' text='000000' link='red' vlink='green'>";
echo "<table border='1' align='center' width='100%'>";
echo "<tr><td align='center' bgcolor='green'>";
echo "<h1>Tema PHPNuke di Michele Sciabarr&agrave;</h1>";
echo "</td></tr></table>\n";
// corpo - tre colonne classico
echo "<table border='1' width='100%'><tr>\n";
echo "<td valign='top' align='center' bgcolor='#abcd80'>";
blocks(left);
echo "</td><td valign='top' width='100%'>";
}
La funzione themefooter() deve chiudere le tabelle aperte da themeheader(). Inoltre c'è una importante "finezza": generalmente l'indice del portale è a tre colonne ma il dettaglio di un articolo è meglio che sia a due colonne. Infatti quando viene visualizzato un articolo, viene affiancato da blocchi quali gli articoli correlati. Per questo motivo è bene che il footer non crei il blocco di destra se si sta visualizzando un articolo. Il modo di operare è semplicemente: controllare la variabile $index e visualizzare la colonna di destra solamente quando è falsa. Il codice è il seguente:
function themefooter() 
{
global $index;
if($index == 1) {
echo "</td>\n";
echo "<td valign='top' bgcolor='abcd80'>";
blocks(right);
}
echo "</td></tr></table>\n";
footmsg();
echo "</body>";
}
Il risultato è il seguente:


Figura 5 - Dettaglio di un articolo senza blocchi

ePrometeus s.r.l. - Web Software House & Open Source System Integrator
MILANO - SAN BENEDETTO DEL TRONTO(AP)
Contatti: info@eprometeus.com