Дата последнего изменения: 23.10.2024
Чтобы сделать жизнь разработчиков проектов удобнее, в ядре D7 с версии главного модуля 14.0.1 основные файлы пользовательских проектов вынесены из папки /bitrix
в папку /local
. Это позволяет изолировать изменяющиеся файлы вашего проекта от папки продукта. По сути, в исключения достаточно будет добавить одну папку /bitrix
.
/local
?
С версии 24.100.0 главного модуля в папке /local могут быть размещены файлы настроек параметров ядра .settings.php и .settings_extra.php.
При обработке папок приоритет всегда у папки /local
перед /bitrix
. Это означает, что если в /local/templates/
и /bitrix/templates/
будут находиться шаблоны сайта с одинаковым названием, то подключится шаблон из /local
.
/local/php_interface/
аналогичные правам доступа к папке /bitrix/php_interface/
.Как старый проект перенести в папку /local
.
Вам достался старый и запущенный проект. Кто когда и как вносил правки - неизвестно, куда вносились правки - неизвестно. Вам нужно навести в нём порядок.
/local
, в ней не создаете файл /local/php_interface/
init
init.php - необязательный файл в рамках структуры файлов Bitrix Framework. Он автоматически подключается в прологе.
/local/php_interface/constants.php
, /local/php_interface/events.php
, автолоадер для своих классов и так далее, и эти файлы подключаете в /bitrix/php_interface/init.php
./local/templates/.default
постепенно начинаете перенос ваши измененных шаблонов, при этом действовать нужно так: копируете в локал с другим названием, работаете с тестовой страницей (если тестового сервера нет). Потом заменяете название и из папки вашегo шаблона удаляете (или переименовываете) старый шаблон. Таким образом новый шаблон (чистый и готовый к использованию) постепенно будет собираться в local. Как только все шаблоны и компоненты перенесены в /local, init.php тоже можно будет перенести./bitrix/templates/**
, /bitrix/components/**
и заменять на /local/**
. Также внимательно проверяем и модули, если есть необходимость и их переносить.Сколько времени уйдёт на этот процесс сказать невозможно. Всё зависит от степени "запущенности". Но опыт разработчиков, выполнявших эти действия, говорит о нескольких неделях работы.
Цитатник веб-разработчиков. Иван Поддубный: Есть простой лайфхак, которым мы пользуемся: Переносим в локал все что нужно, и ставим симлинки с папок в битриксе в локал. Да, это конечно не полноценное решение проблемы, но это даст возможность разработчикам сразу начать работать с проектом с git с клиентом. Ведь когда такая необходимость возникает? Когда клиент приходит в компанию с старым сайтом. А на входе клиенту начать заниматься рефакторингом путей в шаблонах - такое, особенно если шаблонов много, выкатывать клиенту N часов на исправление вместо того чтобы решить более важные проблемы. У таких проектов обычно есть что рефакторить и это более важно, например забитые под завязку init.php с кучей процедурной логики которую написали разработчики тупо копипастя примеры из документации битрикса не удосужившись даже переименовать классы и методы, тормозящие компоненты, роутинг в шаблонах и прочее, перечислять приколы можно долго =) Правда предупреждаем, что при переносе проекта на новый сервер (это случается не слишком часто) могут возникнуть проблемы. |