ダブルクォート内に埋め込まれた変数

Smartyは数字・文字・_(アンダースコア)・[](ブラケット)のみで構成された変数に限り、ダブルクォート内の テンプレートから割り当てられた変数を認識します。ピリオドやオブジェクト参照等のその他のキャラクタを含む場合は、 その変数は``(バッククォート)によって囲まれる必要があります。修正子を埋め込む事は出来ません。 それらは常にクォートの外側で適用する必要があります。

例 3-5. クォート内に埋め込まれた変数の構文

構文例:
{func var="test $foo test"}       <-- $foo を参照する
{func var="test $foo_bar test"}   <-- $foo_bar を参照する
{func var="test $foo[0] test"}    <-- $foo[0] を参照する
{func var="test $foo[bar] test"}  <-- $foo[bar] を参照する
{func var="test $foo.bar test"}   <-- ($foo.bar ではなく) $foo を参照する
{func var="test `$foo.bar` test"} <-- $foo.bar を参照する
{func var="test `$foo.bar` test"|escape} <-- クォートの外側を修飾!

実用例:
{include file="subdir/$tpl_name.tpl"} <-- これは$tpl_nameを値に置き換える
{cycle values="one,two,`$smarty.config.myval`"} <-- バッククォートを使う必要あり