Система управления «Сайт PRO»
Версия 20240107

Шаблоны страниц

Первое, что понадобится разработчику при создании сайта – это редактирование шаблонов страниц. Шаблоны хранятся в папке cms/html . Система использует следующие стандартные файлы шаблонов:

  • template.index.php – основной шаблон разметки страницы. Содержит полный HTML-код страницы, включая заголовки и мета-данные. По умолчанию, весь HTML-код из этого шаблона отображается на всех страницах сайта
  • template.*.php – вспомогательные шаблоны разметки страниц. Если открыть любой URL с параметром ?t=<шаблон>, то будет использован соответствующий шаблон разметки страницы, если он существует. Например, для URL ?t=print будет использован шаблон template.print.php
  • detail.page.php – основной шаблон контента страницы. Выводит текст страницы, меню и картинки внутри контента
  • detail.*.php – шаблон контента страницы с типом, отличным от стандартного типа page . Например, для контента страницы «новость» с типом news, используется detail.news.php
  • simple.*.php – шаблон контента страницы, отображаемой в виде блока на другой странице. Например, в новостной ленте для отображения страницы «новость» с типом news, используется simple.news.php

Шаблоны разрабатываются с использованием обычного PHP. Специальные шаблонизаторы не применяются. Это позволяет сделать обработку шаблонов более быстрой и размещать в них программный код произвольной сложности.

Для того, чтобы создать шаблон, который будет использоваться на единственной странице, предусмотрен специальный механизм. Для страницы с произвольным URL код размещается в файле /index.php . При этом используется «нормализованный» URL. Например, для страницы /about.html код размещается в файле about/index.php . Эта функциональность может быть задействована с помощью $Page->displayCode() или $Main->Display->pageCode() . С помощью этой технологии в систему управления можно интегрировать внешние веб-приложения.

Система управления имеет достаточно гибкие механизмы для использования шаблонов. Чтобы вызвать шаблон detail.*.php для страницы $Page, используется $Page->displayDetail() или $Main->Display->detail() . Чтобы вызвать шаблон simple.*.php для страницы $Page используется $Page->displaySimple() или $Main->Display->simple()

Разработчик может самостоятельно создавать произвольные шаблоны в системе управления. Для вызова произвольного шаблона используется $Main->callTemplate() или $Main->Display->callTemplate()

Некоторые шаблоны могут быть использованы без модификации в большинстве проектов. Они размещаются в папке cms/root-$(PROJECT_NUMBER)/cms/html . Например: