На мой взгляд лучше всего все запросы перенаправлять одному главному скрипту-контроллеру, который будет в зависимости от переданных параметров (если адрес вида index.php?page=contacts) или от строки адреса (/contacts/) выбирать нужную страницу (дерево разделов хранится в базе или ещ? где), выбирать шаблон для этой страницы, заполнять шаблон контентом данной страницы и выдавать пользователю обработанную страницу. Т.е. имеется, например, один шаблон для всего сайта. В н?м в разных местах (на месте правой и левой колонки и центральной части) стоят смарти теги вида {include file=$_center_part}. Когда вызывается страница, находится этот главный шаблон сайта для не?, переменным вида $_center_part задаются адреса файлов (шаблонов смарти), содержащих контент для данной выбранной страницы (index.php?page=contacts), вс? это дело скармливается смарти и получаем результат! При этом конструкции вида: {send_mail var="result" theme="Тема письма" to="qwe@qwe.ru"} тут шаблон {/send_mail} можно писать и в главном шаблоне и подшаблонах для каждой страницы.