🧱 Суть

Проект на 1С-Битрикс состоит из множества директорий, каждая из которых имеет своё назначение.

Условно их можно разделить на три группы:

  • ядро системы – файлы Битрикса
  • пользовательский код – разработка проекта
  • данные сайта – загружаемые файлы и публичные страницы

Понимание структуры проекта позволяет быстро ориентироваться в кодовой базе и избежать ошибок при разработке.

📦 Проблема

Новички часто:

  • не понимают, где искать нужные файлы
  • изменяют файлы ядра
  • размещают собственный код в неподходящих каталогах

В результате:

  • обновления Битрикса могут удалить изменения
  • проект становится сложнее поддерживать
  • нарушается рекомендуемая структура приложения

✅ Решение

Использовать каждую папку только по её назначению:

  • ядро не изменять
  • собственный код хранить в /local
  • пользовательские файлы – в /upload
  • шаблоны – в /local/templates

💻 Код

Общая структура проекта

/
├── bitrix/
├── local/
├── upload/
├── include/
├── images/
├── ajax/
├── catalog/
├── news/
├── index.php
└── .htaccess

/bitrix

Главная системная директория.

Содержит:

  • ядро CMS
  • административную панель
  • встроенные компоненты
  • системные модули
  • классы ядра

Пример:

/bitrix
    ├── admin/
    ├── components/
    ├── modules/
    ├── templates/
    ├── tools/
    └── ...

Изменять содержимое этой папки не рекомендуется.

/local

Основная директория пользовательской разработки.

Обычно содержит:

/local
    ├── components/
    ├── templates/
    ├── modules/
    ├── classes/
    ├── php_interface/
    └── js/

Здесь размещают:

  • собственные компоненты
  • шаблоны
  • классы
  • модули
  • обработчики событий

/upload

Каталог загружаемых файлов.

Например:

/upload
    ├── iblock/
    ├── resize_cache/
    ├── tmp/
    └── images/

Здесь хранятся:

  • изображения
  • документы
  • файлы инфоблоков
  • автоматически созданные миниатюры

/include

Используется для небольших подключаемых файлов.

Например:

/include
    ├── contacts.php
    ├── phone.php
    ├── footer.php
    └── company.php

Часто применяется совместно с включаемыми областями.

/images

Обычно содержит статические изображения сайта:

/images
    ├── logo.svg
    ├── icons/
    └── banners/

Не стоит путать с /upload, где находятся пользовательские файлы.

Публичные разделы

В корне проекта располагаются разделы сайта.

Например:

/catalog/
/news/
/about/
/contacts/

Каждый раздел обычно содержит:

index.php
.section.php
.menu.php

/bitrix/admin

Административная часть Битрикса.

Через неё выполняются:

  • управление инфоблоками
  • настройка пользователей
  • работа с модулями
  • управление сайтом

Изменять файлы этой папки нельзя.

/bitrix/modules

Содержит установленные модули.

Например:

iblock
sale
catalog
main

Каждый модуль включает:

  • PHP-классы
  • настройки
  • миграции
  • административные страницы

/bitrix/components

Стандартные компоненты Битрикса.

Например:

bitrix:news.list
bitrix:catalog
bitrix:menu

Не рекомендуется изменять их напрямую.

При необходимости создают собственные компоненты или шаблоны.

/local/components

Место для собственных компонентов проекта.

Например:

/local/components/company/

Именно здесь рекомендуется разрабатывать новую функциональность.

/local/templates

Каталог шаблонов сайта.

Пример:

/local/templates/main/

Обычно содержит:

header.php
footer.php
styles.css
template_styles.css
components/

Через шаблон определяется внешний вид сайта.

/local/php_interface

Каталог пользовательских настроек.

Наиболее важный файл:

init.php

Используется для:

  • регистрации обработчиков событий
  • подключения классов
  • настройки приложения

.settings.php

Основной конфигурационный файл проекта.

Используется для хранения:

  • настроек подключения к базе данных
  • параметров кеширования
  • сервисов D7

Как правило, изменяется только при настройке проекта.

.htaccess

Конфигурация веб-сервера Apache.

Обычно отвечает за:

  • ЧПУ (SEF URL)
  • перенаправления
  • правила безопасности
  • обработку ошибок

Частые ошибки

Изменять файлы в /bitrix

После обновления системы изменения будут потеряны.

Следует использовать каталог:

/local

Размещать пользовательский код в случайных папках

Лучше придерживаться структуры:

/local/classes
/local/components
/local/modules

Хранить пользовательские изображения в /images

Если файлы загружаются через административную панель, они должны храниться в:

/upload

Изменять стандартные компоненты

Плохо:

/bitrix/components/...

Лучше создать:

  • собственный шаблон компонента
  • или собственный компонент в /local/components

Удалять служебные папки

Некоторые каталоги создаются автоматически системой и используются при работе кеша, загрузке файлов и обновлениях.

Удалять их без понимания назначения не рекомендуется.

🎯 Вывод

  • Структура проекта Битрикса разделяет системные и пользовательские файлы
  • Каталог /bitrix содержит ядро CMS и не должен изменяться
  • Пользовательская разработка ведётся в /local
  • Загружаемые файлы хранятся в /upload
  • Шаблоны сайта располагаются в /local/templates
  • Соблюдение структуры упрощает поддержку проекта и безопасное обновление системы

🔗 Связано