Документация

Далее в подразделах вы найдёте подробное описание всего, что есть внутри Asrerix CMS. Но для начала, чтобы понять суть системы, прочитайте чуть-чуть полезной информации.

Определения

  1. Сайт состоит из данных (страниц), каждая запись имеет свой уникальный URL.
  2. Данные делятся на модули - обобщённые стуктуры данных - новости, акции, и т.д..
  3. Модуль состоит из структур, компонентов и интерфейсов.
  4. Структура - это записи модуля, или разделы записей.
  5. Компонент - отвечает за вывод опредёлнных данных из модуля.
  6. Интерфейс - отвечает за взаимодействие с пользователем в рамках модуля.
  7. Главный модуль - start. При необходимости, он ссылается на другие модули.
  8. Шаблоны отделены от логики.

Структуры

  1. $content - текущая запись в шаблоне доступна в виде {$content}.
  2. $ask - подробности запроса пользователя и запрошенной записи.
  3. $model - модель данных, состоящая из Модулей $model->modules.
  4. $user - пользователь всезда авторизован (даже под гостем).
  5. $config - файл конфигурации.
  6. $settings - настройки сайта из таблицы settings.
  7. Из шаблона можно обратиться к компонентам (preload) и интерфейсам (interface) модулей.
  8. По сути, шаблон управляет всей дополнительной логикой вывода.

Очерёдность работы ядра

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

  1. запуск
  2. инициализация файла конфигурации
  3. авторизация пользователя
  4. запуск необходимого контроллера
  5. поиск запрошенной записи
  6. составление главного меню
  7. запись всех данных в шаблон записи
  8. запуск обращений к компонентам и интерфейсам из шаблона
  9. запись результатов обращений
  10. компиляция шаблона
  11. выдача страницы пользователю

Шаблоны

Для понимания работы шаблонов, нужно понять следующую вещь:

Весь сайт строится из записей.

К примеру, если есть модуль Новости, то сами записи новостей - это и есть основные записи модуля. Все другие структуры модуля новостей, к примеру Разделы, являются вспомогательными, которые помогают каталогизировать основные записи.

Исходя из этого, у каждого модуля на сайте есть всего три шаблона. К примеру, для новостей это будет:

  1. news_index.tpl - шаблон главной страницы модуля
  2. news_content.tpl - шаблон одной записи модуля
  3. news_list.tpl - шаблон списка записей модуля, используется для вспомогательных структур вроде списков и разделов модуля.

Эти шаблоны хранятся в /templates/, и разбиты по папочкам. Каждая папочка - это отдельный макет дизайна. В какой папочке лежат шаблоны для конкретного домена - значится в таблице domains в базе данных.

Панель управления сайтом
Компания Asterix CMS - Современная система ......