Inclusione di frammenti html

Un grande sito che contiene molte pagine mastro è un sito che contiene molte pagine simili. Quando studiate l'immagine coordinata di un un sito web finite sempre per elaborare una testata, un piè di pagina, una barra di navigazione… tutti questi elementi finiscono, duplicati, in tutte le pagine mastro. Si verifica così, per quanto minimizzato, il problema che affligge sempre i siti sviluppati con metodo tradizionale: quando desiderate modificare l'aspetto grafico generale dovete modificare molte pagine distinte applicando le stesse modifiche a ciascuna. Usando Sar.-El e un sito di centomila pagine virtuali magari dovrete modificare soltanto venti pagine mastro, ma è comunque un lavoretto noioso.

Per chi usa un programma autore come Dreamweaver o GoLive questo non è un problema, perché quei programmi offrono meccanismi propri di templating per alterare un gruppo di pagine simili in simultaneo. Gli altri troveranno utile l'istruzione INCLUDE di Sar-At.

Prendete una delle pagine mastro e localizzate il codice HTML della testata. Per fare un esempio banale, potremmo trovare in home page qualche cosa del genere:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it"> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <title>Demo</title> </head> <body> <table> <th> <img src='img/logo.png' /> </th> <th> Benvenuti nel mio sito

</th> </table> Bla bla bla

</body> </html>

La tabella contiene logo e titolo del sito: una tabella identica si troverà in tutte le pagine mastro. Usando un editore di testo, tagliate la tabella e registratela in un file esterno chiamato magari "testatina.ihtml" ("ihtml" sta per "html da includere", ma potete utilizzare qualsiasi altra estensione che desideriate, comprese html, htm e txt).

Al posto della testata tagliata inserite una istruzione Sar-At che la richiama, ottenendo questo effetto complessivo:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it"> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <title>Demo</title> </head> <body> {INCLUDE testatina.ihtml}

Bla bla bla

</body> </html>

La stessa istruzione INCLUDE può venire utilizzata in tutte le altre pagine mastro. Ora, quando volete modificare la testata di ogni pagine del sito, dovete editare il solo file ihtml.

Il terzo sito completo incluso con questo manuale, e che trovate nella cartella "5-sito_canzoni", dimostra l'utilizzo dell'istruzione INCLUDE di Sar-At