Сейчас я работаю над форматом новой темы, большую часть уже написал, с текущей версией можете ознакомится по адресу http://litepublisher.googlecode.com/svn/trunk/themes/default/theme.txt и надо сказать, что новый формат значительно облегчит разработку тем для движка. Я практически закончил с секцией контента, есть вопросы про меню в шапке. Остановился на декларации шаблонов сайтбаров. Проблема в следующем: в теме может быть несколько тем, они нумеруются естественным образом по мере появления в тексте шаблоны всей страницы тега $template.sitebar. Этот тег увеличивает внутренний счетчик номера сайтбара, начиная с 0. В теме по умолчанию есть два сайтбара, сответствено с индексами 0 и 1. Задача стоит таким образом: как установить шаблоны для каждого из сайтбара. Например декларация


$template.sitebar.widget.items = [..html...]

Должна относится к какому из сайтбаров? Естественный ответ - к 0, а как тогда задать шаблон для второго сайтбара?

Далее - количество сайтбаров в старой теме определялось количеством тегов $template.sitebar (эквивалентно количеству секций sitebar в старом формате). В старом формате невозможно было декларировать шаблон виджета без объявления секции sitebar, и поэтому всегда ясно, к кому из сайтбаров относится объявление шаблона. Как быть в новом формате? Один из вариантов решение было прибавить цифру к слову sitebar. Таким образом можно было бы декларировать:


sitebar1.widget.items = [..html..]

Для этого разработчик должен знать порядковый номер редактируемого сайтбара. Также проблема нового формата (точнее в парсере нового формата) в том, что он не подразумевает повторное декларирование шаблонов - он это допускает по принципу последний все переписывает. Для сайтбаров необходимо ввести правило - каждая новая декларация увеличивает внутренний счетчик. Получается симметричный алгоритм - парсер темы и шаблонизатор должны работать похожим образом. Есть над чем подумать, чтобы разрулить все наиболее понятным для конечного разработчика темы образом.