Get Smarty

Donate

Paypal

Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Evitare il parsing di Smarty

A volte è desiderabile o necessario che Smarty ignori sezioni che altrimenti verrebbero analizzate. Un esempio tipico è l'incorporazione di codice Javascript o CSS in un template. Il problema nasce dal fatto che questi linguaggi utilizzano i caratteri { e } che per Smarty sono i delimitatori di default.

La cosa più semplice sarebbe evitare queste situazioni tenendo il codice Javascript e CSS separato in appositi file e usando i collegamenti standard dell'HTML per recuperarli.

E' possibile includere contenuto letterale usando blocchi di questo tipo: {literal} .. {/literal}. Potete anche usare, in modo simile alle entità HTML, {ldelim},{rdelim} oppure {$smarty.ldelim},{$smarty.rdelim} per visualizzare i delimitatori senza che Smarty ne analizzi il contenuto.

Spesso risulta semplicemente conveniente cambiare il $left_delimiter ed il $right_delimiter di Smarty.

Example 3.6. esempio di cambio dei delimitatori


<?php

$smarty = new Smarty;
$smarty->left_delimiter = '<!--{';
$smarty->right_delimiter = '}-->';
$smarty->assign('foo', 'bar');
$smarty->display('example.tpl');

?>

  

Dove example.tpl è:


<script language="javascript">
var foo = <!--{$foo}-->;
function dosomething() {
    alert("foo is " + foo);
}
dosomething();
</script>

  

Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors