FlatNuke MiniHOWTO - Creare un blocco centrale

di Marco Segato

v2.1, 19 maggio 2010
La struttura standard di un FlatNuke � la seguente: una serie di blocchi ai lati destro e sinistro, un messaggio di benvenuto nella parte centrale in alto, e sotto questo lo sviluppo delle notizie pubblicate. Di seguito cercher� di spiegare come poter inserire un nuovo blocco centrale, che si ponga tra il messaggio di benvenuto del sito e le notizie pubblicate nella parte sottostante.

1. Brevi note prima di iniziare

Tutte le indicazioni descritte in questo documento si riferiscono alla versione ufficiale di FlatNuke; per pura scelta personale, quando vado a modificare files propri di FlatNuke, preferisco intervenire il meno possibile sugli originali, quindi il metodo che presenter� cercher� di essere il meno invasivo possibile.
Potete contattarmi per eventuali consigli, suggerimenti o correzioni all'indirizzo segatom(AT)users.sourceforge.net.

2. In che parte del codice di FlatNuke intervenire?

Il codice che si occupa di generare le varie parti della pagina principale si trova in index.php. Pi� precisamente dovremo posizionarci all'interno della funzione getflopt() (che in FlatNuke 2.7.2 si trova alla riga numero 35), prima della riga:


create_news();		// display news as default

Ma perch� proprio qui? La funzione create_news() serve a processare e stampare le news del sito, quindi � corretto che noi ci posizioniamo prima di questa operazione. Scriveremo:

include("nomemioblocco.php");

nomemioblocco.php sar� ovviamente il file che conterr� il codice del nostro nuovo blocco, di conseguenza creeremo un file nella directory principale di FlatNuke con lo stesso nome. Naturalmente, se vogliamo inserire pi� blocchi basta ripetere questa riga creando nuovi file.

3. Creiamo il nuovo blocco da inserire

Ora occupiamoci del file nomemioblocco.php che sar� cos� composto:


<?
echo "<br>";
OpenTable();
echo "ciao mondo!";
CloseTable();
?>

Queste banalissime righe creano un blocco con una tabella, al cui interno compare la scritta "ciao mondo!". Analizziamo riga per riga il codice:

<? e ?> agli estremi indicano rispettivamente l'inizio e la fine del nostro codice PHP;

echo "<br>"; inserisce una riga vuota: diciamo che � bene inserirla cos� da separare il nostro blocco da quello che sta sopra e non averli uno addossato all'altro;

OpenTable(); e CloseTable(); sono due funzioni dei temi di FlatNuke, aprono e chiudono semplicemente una tabella; se volete che il layout sia come quello delle news o dei blocchi laterali, basta utilizzare "OpenTableTitle("testotitolo");" per l'apertura al posto di "OpenTable();";

echo "ciao mondo!"; come gi� detto stampa a video la stringa compresa tra virgolette.

4. Godiamoci il risultato

Ok, abbiamo terminato il nostro nuovo fiammante blocco, colleghiamoci al nostro FlatNuke ed ammiriamo la nostra neonata creatura... L'esempio � volutamente semplicistico, ma non ci sono limiti alla complessit� degli script che si possono produrre: HTML, PHP, JavaScript, potete inserire tutto quello che vi pare! Andate e sbizzarritevi :-)