Немного теорииБазовые объекты
Сайт, построенный на основе oocms, использует, по крайней мере, два базовых типа объектов: страницы и их свойства. Страницами называются объекты, имеющие название, уникальный адрес (URL), тип (PHP-класс) и признак размещения на «карте» сайта. Страница может быть включена или выключена. Каждой странице, можно сопоставить неограниченное количество свойств, имеющих название, тип, описание и значение. Таким образом, страница является контейнером для соответствующих ей свойств.
Страницы задают структуру сайта, а свойства — его содержание.
Как это работает?
Любое обращение посетителя к сайту приводит к поиску наиболее подходящей страницы и отображение её свойства “main”. Простейший сайт может состоять из одной страницы с адресом “/” (корневой адрес) с единственным свойством “main”. По мере усложнения сайта набор страниц растёт «вширь» и «вглубь», формируя иерархическую структуру. Принцип построения иерархии страниц очень прост: положение страницы определяется по её адресу.
Параметры страницы
Если адрес страницы не соответствует в точности запрашиваемому адресу, то «лишняя» часть адреса передаётся вызываемой странице в качестве параметра. Страница может «проигнорировать» параметр или воспользоваться им для отображения специального содержимого. Так, например, страница «Новостей» использует параметры для вывода нужной новости. А корневая страница при получении параметра делает переадресацию на страницу /404 («Страница не найдена»).
Адреса страниц
Адрес страницы всегда начинается с косой черты “/”. В случае корневой (главной) страницы адрес состоит только из символа “/”. После “/” перечислены «ключевые слова», разделенные символом “/”. Каждое ключевое слово указывает на отдельную страницу, таким образом, создание страницы с адресом “/about/contact” подразумевает наличие страницы с адресом “/about”.
Для написания ключевых слов допустимо использовать латинские буквы, цифры, знак подчеркивания и дефис. Ключевое слово должно начинаться с буквы и заканчиваться буквой или цифрой. Использование ключевого слова “index” имеет специальное значение. Для имитации размещения файлов на веб-сервере можно использовать точку и «расширение» в ключевом слове, но в этом случае страница не может иметь вложенных страниц. К примеру, такой адрес является допустимым: “/here.html”, а такой: “/here.html/there” — нет.
Наследование свойств
Наследование свойств удобно для того, чтобы не переопределять у каждой страницы свойства, которые она может унаследовать у страниц, расположенных выше в иерархии. Самая главная страница имеет адрес “/”, все остальные страницы наследуют её свойства автоматически. Таким образом, можно определить свойство “main” только один раз для страницы “/”, все остальные страницы получат это свойство в силу наследования.
Index-страницы
Иногда необходимо, чтобы некоторый раздел на сайте имел вид, непохожий на вид вложенных в него страниц. Так, например, главная страница каталога в электронном магазине может иметь дизайн, сильно отличающийся от вложенных страниц, описывающих каждый товар в отдельности.
Для того, чтобы свойства страницы “/catalog” не наследовались у вложенных страниц, нужно создать специальную index-страницу с адресом “/catalog/index”, свойства которой имеют преимущество при обращении к “/catalog”.
Теперь давайте создадим первый сайт «с нуля». |