Оглавление

Тег {extends} реализует наследование шаблонов, иерархия, обратная {include}. То есть шаблон сам выбирает своего родителя.

{extends}

Родительский шаблон можно задать единожды и до объявления какого-либо блока:

{extends 'parent.tpl'}

{block}

Блок указывает фрагмент шаблона, который будет передан родителю. Имя блока должно быть задано явно:

{block 'bk1'}content 1{/block}
...
{block 'bk2'}content 2{/block}

{use}

Что бы импортировать блоки из другого шаблона используйте тег {use}:

{use 'blocks.tpl'}

{parent}

{block 'block1'}
  content ...
  {parent}
  content ...
{/block}

{paste}

Вставка кода блока в любое место через тег {paste}:

{block 'b1'}
  ...
{/block}

{paste 'b1'}

{. $block}

Проверка наличия блока через глобальную переменную $.block:

{if $.block.header}
    ...
{/if}