Структура файлов
Тему урока можно изучить в новом формате — в документации по Bitrix Framework. В ней улучшена структура, описание, примеры.
Структура файлов
Файловая структура Bitrix Framework организована таким образом, что программные компоненты ядра продукта были отделены от пользовательских файлов, а также файлов, определяющих внешнее представление сайта. Данная особенность позволяет:
- исключить модификацию ядра продукта при работе с файлами системы,
- исключить возможность изменения публичной части сайта при загрузке обновлений продукта,
- настроить внешний вид сайта практически под любую вашу задачу.
Вся система целиком лежит в каталоге /bitrix/, в него входят следующие подкаталоги и файлы:
/activities/- папки действий для бизнес-процессов;/admin/- административные скрипты;/cache/- файлы кеша;/components/- папка для системных и пользовательских компонентов;/css/- общие стили модулей;/gadgets/- папки гаджетов;/js/- файлы javascript модулей;/stack_cache/- файлы кеша с автоматическим вытеснением устаревших записей;/services/- публичные сервисы модулей;/themes/- темы административного раздела;/wizards/- папки мастеров;/images/- изображения используемые как системой в целом, так и отдельными модулями;/managed_cache/- управляемый кеш;/modules/- каталог с модулями системы, каждый подкаталог которого имеет свою строго определённую структуру;/php_interface/- вспомогательный служебный каталог, в него входят следующие каталоги и файлы:- dbconn.php - параметры соединения с базой. С версии 20.900.0 параметры соединения берутся из файла
/bitrix/.settings.php, - init.php - подключение пользовательских обработчиков событий,
- after_connect.php - подключается сразу же после создания соединения с базой,
- dbconn_error.php - подключается при ошибке в момент создания соединения с базой,
- dbquery_error.php - подключается при ошибке в момент выполнения SQL запроса,
- /ID сайта/init.php - подключение пользовательских обработчиков событий для конкретного сайта; файл подключается сразу же после определения специальной константы c идентификатором сайта -
SITE_ID, /templates/- каталог с шаблонами сайтов и компонентов , в него входят следующие подкаталоги:/.default/- подкаталог с общими файлами, используемыми тем или иным шаблоном по умолчанию, структура данного каталога аналогична нижеописанной структуре каталога содержащего конкретный шаблон,/ID шаблона сайта/- подкаталог с шаблоном сайта, в него входят следующие подкаталоги и файлы:/components/- каталог с кастомизированными шаблонами компонентов,/lang/- языковые файлы принадлежащие как данному шаблону в целом, так и отдельным компонентам,/images/- каталог с изображениями данного шаблона,/page_templates/- каталог с шаблонами страниц и их описанием хранящимся в файле .content.php. Когда пользователь создает новую страницу, он может выбрать, по какому шаблону из представленных в этом каталоге это будет сделано,- header.php - пролог данного шаблона,
- footer.php - эпилог данного шаблона,
- template_styles.css - основной файл стилей для шаблона,
- styles.css - CSS стили шаблона для визуального редактора (вкладка Стили сайта),
/tools/- при инсталляции в этот каталог копируются дополнительные страницы, которые могут быть непосредственно использованы на любых страницах сайта: помощь, календарь, показ изображения и т.п.;/updates/- каталог, автоматически создаваемый системой обновлений;- .settings.php - файл настроек
Bitrix Framework имеет ряд специфичных настроек ядра, которые не имеют визуального интерфейса редактирования. Этот подход вызван тем, что изменение настроек или ошибка в них легко могут привести к неработоспособности системы (настройки подключения к базе данных, настройки кеширования и т.д.).
Подробнее ... ядра D7; - header.php - стандартный файл, подключающий в свою очередь конкретный пролог текущего шаблона сайта; данный файл должен использоваться на всех страницах публичной части; - footer.php - стандартный файл, подключающий в свою очередь конкретный эпилог текущего шаблона сайта; данный файл должен использоваться на всех страницах публичной части; - license_key.php - файл с лицензионным ключом; - spread.php - файл используемый главным модулем для переноса cookie (куков)
; Cookie - это текстовая строка информации, которую веб-сервер передает в браузер посетителя сайта и которая сохраняется в файле на устройстве посетителя сайта. Как правило, используется для определения уникальности посетителя, времени его последнего визита, личных настроек, уникального идентификатора корзины покупок и т.д.
Подробнее... посетителя на дополнительные домены различных сайтов; - .access.php - файл формируется динамически правами доступа; - routing_index.php - входная точка нового роутинга
Для запуска новой системы роутинга нужно перенаправить обработку 404 ошибок на файл routing_index.php в файле .htaccess:
Подробнее ... ; - virtual_file_system.php - поддержка кириллицы в системе; - и другие служебные файлы и папки.
В зависимости от используемой редакции некоторые каталоги и файлы могут отсутствовать либо добавлены теми или иными модулями
Например:
redirect.php - файл используемый модулем Статистика для фиксации событий перехода по ссылке;
rk.php - файл по умолчанию используемый модулем Реклама для фиксации событий клика по баннеру;
stop_redirect.php - файл используемый модулем Статистика для выдачи какого либо сообщения посетителю, попавшему в стоп-лист;
activity_limit.php - файл используемый модулем Статистика для выдачи сообщения роботу при превышении им лимита активности;
и другие.
.