Архитектура движка


CMS Webolla представляет весь сайт в виде одного дерева. Есть корневые элементы, у них есть подчиненные, у тех свои подчиненные и т.д. Это дерево можно видеть и редактировать из «Контент сайта» или «Дерево сайта»

Каждый элемент в дереве имеет свой тип. Типы настраиваются отдельно в меню «Типы узлов».

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

Шаблон отображения и тип подчиненных элементов может быть задан и в самом конкретном элементе, в таком случае он имеет преимущество над тем, который задан в типе.

Пример:

 Тип «Новость» - дополнительные поля дата, короткое описание, длинное опсание, картинка. Шаблон для отображения: news.htm

Тип  «Список новостей» - доп. Полей не имеет, шаблон для отображения news_list.htm, тип подчиненных элементов - «Новость».

Для организации добавления новостей в админке можно:

Вариант 1: сделать оба типа Новость и Список новостей, далее добавить узел, назвать, например, «Новости» и задать ему тип «Список новостей».

Вариант 2: Сделать только тип «Новость», затем добавить  узел, назвать, например, «Новости»  и в узле указать, тип подчиненных элементов – «Новость» и шаблон отображения news_list.htm

И в первом и во втором варианте, при добавлении подчиненных элементов под «Новости» все эти элементы автоматически будут добавляться с типом «Новость», и показывать доп. Поля для ввода новости: Дату, Короткий текст, Длинный текст, картинку.

Таким образом можно выстраивать каскады типов, указывая для каждого типа тип его подчиненных элементов.