Допустим, block-данному, находящемуся в шаблоне aa.tpl, желательно назначать шаблон bb.tpl. В этом случае, в файле aa.tdd нужно написать:
aa.tdd<?php
$types[1] = "block template('bb')";
//Вариант автоматического назначения:
//$types[1] = "block template('bb') option('new')";
?>
aa.tpl
<?php echo " {$dat['edit']}<br> $dat[1]<br> " ?>bb.tpl
<?php echo " {$dat['edit']} Это - шаблон по умолчанию " ?>
Точно так же, если заранее известно, что страница, вернее ее корневой блок, будет иметь какой-то определенный шаблон, то в файле дескриптора (.tdd) шаблона, в котором находится ссылка на эту страницу, нужно написать:
aa.tdd<?php $types[1] = "page template('mypage')"; //Вариант автоматического назначения: //$types[1] = "page template('mypage') option('new')"; ?>aa.tpl
<?php echo " {$dat['edit']}<br> <a href='?page=$dat[1]'>ссылка</a><br> "; ?>mypage.tpl
<?php echo " {$dat['edit']} Это - шаблон по умолчанию "; ?>
$types[1] = 'page(mypage, new)';
$types[1] = 'page(/mypage, new)';
Выше был рассмотрен, так сказать, полуавтоматический режим назначения шаблонов, когда в процессе замены шаблона система будет только предлагать к назначению тот или иной шаблон.
Можно пойти дальше, и в дескрипторе за пользователя выбрать и опцию назначения шаблона. В этом случае, системе будет уже досточно данных для автоматического назначения шаблона. Как задать эти параметры (шаблон и опцию), читайте в статьях Данные типа block и Данные типа page.
При разработке шаблонов, разработчику сайта желательно везде, где можно, указывать шаблон по умолчанию и опцию назначения шаблона. В любом случае, если назначенный шаблон не подойдет, его можно заменить.