{include} в смарти

gladalex

Новичок
{include} в смарти

Созрел вопрос по поводу использования {include} в смарти

Рассмотрим пример
{foreach from=$items item=item}
{if $item.type=="male"}
{include file="item-male.tpl" item=$item}
{else if $item.type=="female"}
{include file="item-female.tpl" item=$item}
{/if}
{/foreach}

Посмотрев исходники смарти, нашёл что инлуд преобразуется в конце концов в банальный пхп-ный инклуд.
Если прилётся выводить 100 записей, будет выполнено 100 инклудов???

Хотелось бы, чтобы файл не инклудился постоянно, а при компиляции шаблона заэмбедился непосредственно. Возможно ли такое?
 

gladalex

Новичок
хотелось бы большие куски вынести в отдельный файл
тем более что эти боксы могут использоваться и на других страницах
 

Igor aka TiGR

Новичок
Смарти не использую, но насколько я помню, в смарти, если включено кэширование, инклюды кэшируются.
 

gladalex

Новичок
точный ответ на этот вопрос не нашел :(
изучаю информацию по кешированию, но кажется, этот вариант не подойдёт - контент полностью динамический и постоянно меняющийся

----
проверил - действительно кеширование не помогает...
добавить чтоли в Смарти метод {embed file .....} :)
Можно конечно поизвращаться с лайф-таймами и прочими вещами, только нужно изящное решение. Копаю дальше...

-~{}~ 27.08.06 17:01:

ребятки, вроде нашёл то что искал
линк:
http://www.phpinsider.com/smarty-forum/viewtopic.php?t=5068
 
Сверху