Структура директорий
Проекты на Bitrix Framework имеют четкую структуру директорий, которая разделяет системные файлы, пользовательские разработки и загружаемый контент. Это позволяет:
-
не изменять ядро при правках сайта,
-
обновлять систему без риска повредить дизайн,
-
гибко настраивать внешний вид.
Основные папки и файлы структуры:
-
/bitrix/— системные файлы, -
/local/— пользовательские разработки, -
/upload/— загружаемые файлы, -
/index.php— главная страница сайта.
Дополнительно создаются публичные страницы, структура которых зависит от выбранного решения.
Папка /bitrix
Все системные файлы находятся в папке /bitrix/.
Некоторые папки могут отсутствовать или добавляться модулями — это зависит от редакции продукта.
Основные системные каталоги и файлы
-
/activities/— действия для бизнес-процессов. -
/admin/— административные скрипты. -
/components/— системные и пользовательские компоненты. -
/css/— общие стили модулей. -
/gadgets/— гаджеты. -
/js/— JavaScript-файлы. -
/modules/— модули системы. У каждого модуля своя структура. -
/php_interface/— служебные файлы:-
init.php— подключение пользовательских обработчиков событий. -
after_connect.php— скрипт, который выполняется после подключения к БД в старом ядре. -
after_connect_d7.php— скрипт, который выполняется после подключения к БД в ядре D7. -
dbconn_error.php— обработчик ошибок подключения. -
dbquery_error.php— обработчик ошибок SQL-запросов. -
/<ID сайта>/init.php— подключение пользовательских обработчиков событий для конкретного сайта. Подключается после определенияSITE_ID.
-
-
.settings.php— настройки ядра. -
header.php— стандартная шапка сайта. -
footer.php— стандартный подвал сайта. -
license_key.php— лицензионный ключ. -
.access.php— права доступа. Генерируется автоматически. -
spread.php— файл Главного модуля для переноса cookies посетителя на дополнительные домены различных сайтов. -
routing_index.php— входная точка роутинга. -
virtual_file_system.php— поддержка кириллицы в системе.
Кеш
-
/cache/— кешированные данные. -
/stack_cache/— кеш с вытеснением. -
/managed_cache/— управляемый кеш.
Дизайн и шаблоны
-
/templates/— шаблоны сайтов и компонентов:-
/.default/— файлы шаблона по умолчанию. -
/<ID шаблона>/— кастомизированный шаблон:-
/components/— шаблоны компонентов. -
/lang/— языковые файлы. -
/images/— изображения шаблона. -
/page_templates/— шаблоны страниц. Описание в.content.php. -
header.php— шапка сайта. -
footer.php— подвал сайта. -
template_styles.css— основные стили. -
styles.css— стили для визуального редактора.
-
-
-
/themes/— темы административного раздела.
Папка /local
Доработки рекомендуется хранить в папке /local/:
-
чтобы отделить пользовательские файлы от системных,
-
упростить обновления и резервное копирование,
-
снизить риск повреждения ядра.
Если папка /local/ отсутствует в структуре проекта, создайте ее.
Что можно хранить
-
/activities/— действия бизнес-процессов. -
/components/— компоненты. -
/gadgets/— гаджеты рабочего стола. -
/modules/— пользовательские модули. -
/php_interface/— файл инициализацииinit.phpи языковые файлыuser_lang. -
/templates/— шаблоны сайта и компонентов. -
/blocks/— блоки Сайтов24. -
/routes/— конфигурацию роутинга. -
/js/— кастомные скрипты. -
.settings.phpи.settings_extra.php— файлы настроек параметров ядра.
Особенности работы
Приоритет файлов. Если файл одновременно существует в /local/ и в /bitrix/, система использует версию из /local/. Это переопределяет стандартный функционал без изменения ядра.
Структура. Дублирование файлов между /local/ и /bitrix/ усложняет поддержку. Все пользовательские изменения лучше размещать только в /local/.
Безопасность. Для папки /local/php_interface/ нужно установить права доступа как для /bitrix/php_interface/, так как она содержит важные файлы инициализации.
Как перенести проект
-
Создайте аналогичную структуру папок в
/local/. -
Постепенно переносите измененные файлы из
/bitrix/и проверяйте работу сайта. -
Используйте Монитор качества, чтобы выявить измененные файлы ядра. Найти его можно в административном разделе продукта на странице Настройки > Инструменты > Монитор качества.
Папка /upload
Папка /upload/ — хранилище для всех файлов, которые загружают на сайт стандартные механизмы Bitrix Framework. Вместо /upload/ можно указать другую папку в настройках Главного модуля.
-
Откройте в административном разделе страницу Настройки > Настройки продукта > Настройки модулей > Главный модуль.
-
Укажите папку в поле Папка по умолчанию для загрузки файлов.
Как хранятся файлы
Система автоматически создает подпапки для разных типов контента, например:
-
/upload/resize_cache/— кэшированные версии изображений после обработки, -
/upload/iblock/— файлы инфоблоков, -
/upload/media/— файлы медиабиблиотеки.
Каждый модуль может создавать свои подпапки для хранения файлов.
Как работать с файлами
Все операции с файлами рекомендуется выполнять через стандартные инструменты:
-
медиабиблиотеку — для изображений, аудио, видео и документов,
-
файловый менеджер — для работы с файлами в административном разделе,
-
API — для работы с файлами в коде.
Для доступа к файлам из кода используйте методы API, а не прямые пути к файлам.
Публичные страницы и разделы
Структура публичной части сайта зависит от используемого решения и настроек.
Главная страница. Лежит в корне сайта и имеет название — /index.php.
Страницы. Файлы с контентом. Размещаются в файловой структуре сайта.
Разделы. Папки с индексными файлами, например, /catalog/index.php. Индексный файл отображает информацию раздела.
Динамическая информация
Контент на сайте может формироваться динамическими страницами и разделами. Их нет в файловой структуре. Они виртуальные, то есть их генерирует код.
Например, в файле /catalog/index.php можно разместить компонент, который создаст структуру из разделов и страниц с товарами на сайте.