Smarty资源目录

时间:2014-10-06 17:42:02

标签: php templates smarty

我使用smarty进行最新的个人项目并遇到问题。

$smarty = new Smarty;
$smarty->template_dir = 'templates/dashboard/';

以上从这个目录加载.tpl文件,这对我很有用,但在.tpl中我想加载一个图像,我必须这样做:

<img src="templates/dashboard/images/avatar/full/{$user->username}.jpg" class="profile-avatar img-thumbnail">

我想做但却没有工作的是:

<img src="images/avatar/full/{$user->username}.jpg" class="profile-avatar img-thumbnail">

我在设置template_dir的时候也会改变,但这也会改变,但它并没有...... 我无法找到任何可以为.tpl文件更改此文档的文档。

请注意&#39; templates / dashboard&#39;,这就是我想摆脱.tpl

的内容

1 个答案:

答案 0 :(得分:0)

首先,您不应将图像放在模板所在的文件夹中。图像应放在公共文件夹中(通常为publicpublic_html),站点代码可以放在其他无法从Web访问的目录中。

所以将你的文件移到另一个文件夹中,因为你现在拥有的结构肯定会让你有一天遇到麻烦。

但是如果您仍然想要使用这样的结构,您可以使用您想要使用的路径将新变量分配给Smarty:

$smarty->assign('ip', $smarty->template_dir);

现在在您的模板中,您可以使用:

<img src="{$ip}images/avatar/full/{$user->username}.jpg" class="profile-avatar img-thumbnail">