Allora ho una document root "/Applications/MAMP/htdocs". All'interno di tale document root ho 2 cartelle "blog" e "smarty".
in blog ho un config.php, un index.php, una cartella "templates" contenente i template da far compilare a smarty (index.tpl ad esempio).
Ora il file blog/config.php
Codice PHP:
<?
require($_SERVER["DOCUMENT_ROOT"].'/smarty/Smarty.class.php');
$smarty = new Smarty();
$smarty->template_dir = $_SERVER["DOCUMENT_ROOT"].'/blog/templates';
//... continuo ...
?>
Il file blog/index.php
Codice PHP:
<?
require('config.php');
// ...
$smarty->assign('title', $title); // titolo della pagina
$smarty->assign('titolo', $titolo); // titolo del post
$smarty->assign('post', $post); // corpo del post
$smarty->assign('info', $info); // info del post
// ...
// COSTRUZIONE TEMPLATE
$smarty->display('index.tpl');
// ...
?>
E fin qui tutto OK, quando richiamo l'index.php visualizzo il template proprio come l'avevo programmato io (che cosa strana eh???) 
Ora se lo stesso file lo volessi mettere in una directory e avere ad es. blog/pagine/index.php modifico il file index.php così:
Codice PHP:
<?
require('../config.php');
// ...
$smarty->assign('title', $title); // titolo della pagina
$smarty->assign('titolo', $titolo); // titolo del post
$smarty->assign('post', $post); // corpo del post
$smarty->assign('info', $info); // info del post
// ...
// COSTRUZIONE TEMPLATE
$smarty->display('index.tpl');
// ...
?>
Il file dovrebbe funzionare già così ma l'output è una pagina bianca... qualcuno mi riesce a far capire dove sbaglio????