Featured Post

SMARTY: BREVE INTRODUZIONE

Smarty è un motore per la creazione di template che permette di separare la parte di logica (PHP) dalla parte di presentazione (HTML, XML, ecc.). Smarty offre un semplice linguaggio per creare i template, con la possibilità di avere condizioni e cicli. Ho utilizzato questo strumento per riscrivere...

Read More

SMARTY: BREVE INTRODUZIONE

Posted by admin | Posted in PHP, Smarty | Posted on 26-11-2008

Tag:,

0

Smarty è un motore per la creazione di template che permette di separare la parte di logica (PHP) dalla parte di presentazione (HTML, XML, ecc.).

Smarty offre un semplice linguaggio per creare i template, con la possibilità di avere condizioni e cicli.

Ho utilizzato questo strumento per riscrivere del codice che avevo già creato in precedenza ed effettivamente il codice prodotto è risultato di granlunga inferiore di quello che avevo in partenza. Il codice rimane più pulito e più semplice da modificare, sia nella parte di logica che in quella di template.

Come Funziona?

Per utilizzare Smarty bisogna prima di tutto scaricare le sue librerie e copiarle in una cartella del sito (io userò la cartella “libs”).  Sono necessarie altre due cartelle, la cartella templates e la cartella templates_c.

Nella cartella templates (Come dice il nome stesso) verranno creati i file di template, mentre la seconda è una cartella che serve per il funzionamento di Smarty, verrà quindi lasciata vuota. Bisogna assicurarsi che questa cartella abbia i permessi di scrittura per l’utente PHP.

Ora dovremo includere nella nostra pagina PHP le librerie e istanziare un oggetto Smarty.

1
require 'libs/Smarty.class.php';
2
$smarty = new Smarty;

I dati verranno passati al template tramite variabili assegnate a Smarty tramite codice.
1
$variabile = "In questa variabile c'è del contenuto magari preso da database";
2
$smarty->assign("variabile",$variabile);

La funzione assign ha come primo parametro il nome della variabile che sarà visibile e utilizzabile nel template, e come secondo parametro il valore da associare alla variabile, per esempio
1
$smarty->assign("menu_selezionato", 2);
2
$smarty->assign("titolo", "Esempio");

Smarty offre anche la possibilità di utilizzare un comodo strumento di debug.

Per attivarlo si usa il seguente comando:

1
$smarty->debugging = true;

A questo punto per associare un template alla pagina si usa il metodo display, l’estensione di default per la creazione di template è “tpl”:
1
$smarty->display("mio_template.tpl")

L’unica cosa che manca ora da fare è di definire il template:
1
<?xml version="1.0" encoding="UTF-8"?>
2
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
<head>
5
<title>{$titolo}</title>
6
<body>
7
    {$contenuto}
8
</body>
9
</html>

Come vedete dal codice per utilizzare le variabili precedentemente definite è solo necessario chiuderle tra parentesi graffe utilizzando il $ prima del nome, come se fossero normali variabili PHP.

[XHTML] DICHIARARE LA LINGUA DELLA PAGINA

Posted by admin | Posted in XHTML | Posted on 26-11-2008

Tag:,

0

Sarebbe una buona cosa dichiarare la lingua principale della pagina quando viene definita una pagina XHTML.

Per far ciò si può utilizzare l’attributo xml:lang sul tag HTML con valore la sigla della lingua utilizzata: “it” Italiano, “fr” Francese, “en” Inglese, ecc.

<html xml:lang=”it”>

</html>

In caso si scriva nella pagina del contenuto con lingua diversa dalla lingua definita come principale si può ricorrere al tag in linea SPAN definendo in esso l’attributo xml:lang.

<span xml:lang=”en”>This is any english content.</span>