ALBIREO CMS
version: 2026.06.07

Константы Albireo CMS

Переопределение констант

Albireo CMS задаёт основные константы в момент запуска и инициализации системы. В основном это формирование путей к каталогам и корректные url-адреса.

При необходимости можно переопределить эти константы. Сделать это можно несколькими способами.

  1. Файл website/constants.php — это самое раннее определение констант.
  2. Файл website/myconstants.php — это самое позднее определение констант, где доступны другие.
  3. Файл website/base-constants.php — это определение констант перед основными.

В большинстве случаев будет удобно использовать файл website/base-constants.php.

Пример такого файла:

<?php
# base-constants.php

// отладка-профилирование для LOCALHOST
if (LOCALHOST) define('DEBUG_BENCHMARK', '');
ВАЖНО! В константах (и везде в системе) используются пути с закрывающимся Linux-слэшем /.

Использование констант

Старайтесь использовать константы, вместо сложных путей.

Например вместо 'templates/default/parts/head/rss.php' лучше сделать так TEMPLATE_PARTS_DIR. 'head/rss.php'

Во многих функциях Albireo CMS нужно указывать полные пути к файлам. Поэтому константы позволяют сделать это просто и удобно, например:

// TPL_DIR — это каталог templates/default/tpl
echo tpl(data: $rows['files'], tpl: TPL_DIR . 'shorts.php');

Список констант Albireo CMS

Ниже приведен список констант (и их дефолтное значение). В качестве разделителя каталогов в путях всегда используется символ / (в Linux и Windows).

  • BASE_DIR = путь на сервере Полный путь на сервере к каталогу пользователя.
  • FRONT_NAME = website Имя каталога сайта пользователя. Задаётся в корневом index.php.
  • RUN_IS_ROOT = true Признак того, что сайт запущен из-под корня сайта.
  • LEVEL_UP_DIR = путь на сервере Полный путь к каталогу уровнем выше, чем каталог пользователя.
  • LEVEL_UP_URL = url-адрес URL уровнем выше, чем основной каталог сайта (website).
  • SYS_DIR = путь на сервере Полный путь на сервере к системному каталогу system.
  • TIME_START = метка времени Начальная метка времени для оценки скорости работы сайта.
  • SITE_URL = url-адрес Полный адрес сайта.
  • SITE_HOST = хост Хост сайта (без протокола).
  • FRONT_URL = url-адрес Адрес-url к FRONT_NAME.
  • FRONT_URL_NAME = хост FRONT_URL без протокола.

  • PAGES_DIR = путь на сервере Полный путь на сервере к каталогу pages.
  • PAGES_URL = url-адрес Полный адрес к каталогу pages.
  • TEMPLATES_DIR = путь на сервере Полный путь на сервере к каталогу templates.
  • TEMPLATES_URL = url-адрес Полный адрес к каталогу templates.
  • SERVICE_DIR = путь на сервере Полный путь на сервере к каталогу service.
  • SERVICE_URL = url-адрес Полный адрес к каталогу service.
  • RESOURCES_DIR = путь на сервере Полный путь на сервере к каталогу _resources.
  • RESOURCES_URL = url-адрес Полный адрес к каталогу _resources.
  • UPLOADS_DIR = путь на сервере Полный путь на сервере к каталогу uploads.
  • UPLOADS_URL = url-адрес Полный адрес к каталогу uploads.

  • TEMPLATE_DIR = путь на сервере Полный путь на сервере к каталогу шаблона.
  • TEMPLATE_URL = url-адрес Полный адрес к каталогу шаблона.
  • ASSETS_DIR = путь на сервере Полный путь на сервере к каталогу шаблона assets.
  • ASSETS_URL = url-адрес Полный адрес к каталогу шаблона assets.
  • TEMPLATE_MODULES_DIR = путь на сервере Полный путь на сервере к каталогу шаблона modules.
  • TEMPLATE_LAYOUT_DIR = путь на сервере Полный путь на сервере к каталогу шаблона layout.
  • TEMPLATE_PARTS_DIR = путь на сервере Полный путь на сервере к каталогу шаблона parts.
  • TPL_DIR = путь на сервере Полный путь на сервере к каталогу шаблона tpl.
  • TEMPLATE_SNIPPETS_DIR = путь на сервере Полный путь на сервере к каталогу шаблона snippets.
  • EXTRAS_DIR = путь на сервере Полный путь на сервере к каталогу шаблона extras.

  • SERVICE_MY_DIR = путь на сервере Полный путь на сервере к каталогу service/my. Переопределяется через конфигурацию serviceMyDir.
  • SERVICE_MY_URL = url-адрес Полный адрес к каталогу service/my.

  • CACHE_DIR = путь на сервере Полный путь на сервере к каталогу cache.
  • BACKUP_DIR = путь на сервере Полный путь на сервере к каталогу backup.
  • EVENTS_DIR = путь на сервере Полный путь на сервере к каталогу events.
  • STORAGE_DIR = путь на сервере Полный путь на сервере к каталогу storage.
  • SEEDER_DIR = путь на сервере Полный путь на сервере к каталогу seeder.
  • SESSIONS_DIR = путь на сервере Полный путь на сервере к каталогу сессий (лучше не использовать!).
  • CONFIG_DIR = путь на сервере Полный путь на сервере к каталогу config.
  • SNIPPETS_DIR = путь на сервере Полный путь на сервере к каталогу snippets.
  • WIDGETS_DIR = путь на сервере Полный путь на сервере к каталогу system/widgets.
  • WIDGETS_DIR_SITE = путь на сервере Полный путь на сервере к каталогу service/widgets.
  • COMPOSER_DIR = путь на сервере Полный путь на сервере к каталогу vendor.

  • ALBIREO_ADMIN_NAME = admin Каталог админ-панели.
  • ALBIREO_ADMIN_URL = url-адрес Адрес админ-панели.
  • ALBIREO_ADMIN_DIR = путь на сервере Полный путь на сервере к админ-панели.
  • ALBIREO_ADMIN_LINK_EDIT_FILE = url-адрес Базовая ссылка на админ-страницу редактирования файла.

  • REQUEST_AJAX = url-адрес Адрес для отправки AJAX-запросов.
  • METHOD_AJAX = строка Содержит method = _ajax.

  • LOCALHOST = true/false Если это 127.0.0.1.
  • LF = \n Перевод строки
  • APOS = ' Одиночная кавычка
  • BSOL = \ Обратный слэш

Константы безопасности

Все токены имеют шифрование (OPENSSL с AES-256-CBC), а также base64-кодирование, поэтому токены можно безопасно использовать без дополнительной обработки.

  • CSRF - содержит готовую строку <input> со всеми необходимыми токенами для форм.
  • SESSION_TOKEN — токен сессии.
  • SESSION_TOKEN_SOURCE — токен текущей страницы. После обработки будет доступна константа TOKEN_SOURCE, которая хранит адрес откуда была отправка. Используется на уровне обработчика.
  • SESSION_TOKEN_TIME — токен метки времени. После обработки будет доступна константа TOKEN_TIME (тип float), которая хранит кол-во секунд с момента формирования токена SESSION_TOKEN_TIME.
  • SESSION_TOKEN_CRYPT — случайный токен сессии может использовать при дополнительной шифровке в encryptDecrypt().

См. Работа с AJAX.