Меню сайта
В этой статье мы с Вами поговорим о меню. Меню сайта в Deep-CMS — очень простая и в то же время очень гибкая сущность. Дело в том, что к меню можно прикреплять любое количество узлов, и наоборот — один узел можно прикрепить к любому количеству меню.
Что это нам дает?
Это дает нам возможность строить структуры различных меню вне зависимости от фактической структуры дерева документов. Это касается как «линейных», так и многоуровневых меню. А то, как эти меню будут выглядеть на сайте — это уже дело дизайнера и полета его фантазии. Выпадающие уровни, вложенные списки, горизонтальные, вертикальные меню, да не важно какие.
Взгляните на большое меню с вложенными пунктами в левой части этого сайта — это левое меню с идентификатором равным еденице. Ничего сложного, все генерируется автоматически. Нам же следует сейчас разобраться как это работает в административном разделе.
У каждого меню есть название и уникальный идентификатор.
Название меню
Название меню нигде на сайте не выводится. Оно служит лишь для удобства структурирования в административном разделе. Вы можете называть свои меню как Вам захочется.
Уникальный идентификатор меню
А вот идентификатор для меню очень важен. Это целое число от 1 до 10000 — уникальный номер меню. Номера могут идти не по порядку, тут нет никаких ограничений. Захотите чтобы единственное меню на сайте было под номером 1342? Так и будет. Однако система не позволит Вам создать два меню с одинаковым идентификатором. Зато позволит создать два меню с разными идентификаторами и одинаковыми названиями. Это уже на ваше усмотрение, хотите два одинаковых названия — пожалуйста.
Именно по идентификатору происходит обращение к меню для вывода в шаблон списка узлов прикрепленных к этому меню. Как работать с шаблонами мы обсудим уже совсем скоро. А сейчас необходимо до конца рассказать про меню и работу с ним в административном разделе.
Редактируемый идентификатор был добавлен на тот случай если Вы вдруг удалите какое-либо важное меню, к которому уже прикреплена сотня-другая узлов. Ужасная ситуация, не правда ли? Так вот даже при случайном удалении меню, узлы останутся скрытно прикреплены к идентификатору. Чтобы восстановить все связи, нужно просто заново создать меню с таким же идентификатором.
Кроме того редактируемый идентификатор позволяет избавиться от правки шаблонов, в которых этот идентификатор указывается для получения списка прикрепленных к этому меню узлов.
Однако не стоит надеяться на то, что после случайного удаления меню и множества других изменений, при «восстановлении» меню все вернется к старому состоянию. Операция «восстановления» будет корректной только в том случае, если ничего кроме случайного удаления меню не происходило.