Файл init.php
Сам по себе файл не обязательный, особенность его в том, что он подключается в начале каждой страницы сайта и служит для инициализации обработчиков событий или подключения дополнительных функций. То есть, в нем можно размещать код, который необходим для выполнения на каждой странице сайта.
Последовательность очереди подключения можно посмотреть в документации по Битрикс: первым идет
подключение пролога, а затем init.php
.
Для примера, определим в init.php
свою константу:
<?
define(STRING, 'Тест');
?>
Затем перейдем на сайт, откроем тестовую страничку и в режиме кода вызываем константу которую определяли в init:
<?echo STRING;?>
Получаем вывод значении Тест
. То есть, таким образом можно работать как при использовании стандартных функций php, а
также писать свой код или задействовать API битрикс
.
Где в Битрикс лежит файл init.php
Файл init.php
в битрикс может находиться по одному из следующих путей:
/bitrix/php_interface/init.php
в этом случае код написанный в файле распространяется на все ваши сайты/bitrix/php_interface/ID сайта/init.php
если файл находится по этому пути, то написанный в нем код будет подключен только к одному определенному сайту/local/php_interface/init.php
этот файл пришел к нам изD7
. Это аналог файла/bitrix/php_interface/init.php
Он будет работать для всех ваших сайтов, при этом есть один очень важный нюанс: файл/bitrix/php_interface/init.php
не подключится и соответственно код написанный в нем работать не будет/bitrix/php_interface/ID сайта/init.php
тот файл, как и предыдущий его собрат пришел к нам из ядраD7
, но является аналогом файла/bitrix/php_interface/ID сайта/init.php
как и у его предшественника, при подключении этого файла, глобальный файл/bitrix/php_interface/ID сайта/init.php
работать не будет
Как работать с файлом init.php
Файл init.php
в битрикс достаточно важный т.к. подключается в прологе, т.е. еще до выполнения кода на страницах сайта и
административной части, таким образом любая ошибка в файле init.php
приведет к тому, что перестанет работать не только
публичная часть сайта, но и административная.
Даже если вы узнали где лежит init.php
в битрикс и понимаете как сним работать, необходимо соблюдать некоторые меры
безопасности и правила хорошего тона в программировании:
- Всегда вносите изменения только по
ftp
илиsftp
или хотя бы убедитесь в том, что у вас есть доступ к сайту поftp/sftp
- это будет полезно, если вы допустите ошибку в файле и сайт перестанет работать - Не начинайте
init.php
в битрикс с пустой строки или с комментария, т.к. это с большой долей вероятности вызовет ошибку и сайт перестанет работать - Если вам нужно написать много кода в файле
init.php
, то даже сам битрикс советует делать это с разделением на логические куски, разделение кода на файлы и подключение этих файлов черезrequire_once
вinit.php
Что делать, если после изменения init.php сайт перестал работать
Перед началом работы с файлом init.php
я советую сохранить локальную копию где-то у себя на компьютере и при
возникновении ошибки просто вернуть исходный код, но если вы уже допустили ошибку в файле init.php
и сайт перестал
работать, а запущена к примеру реклама, то есть достаточно простой способ быстро решить проблему - переименовать файл
например так test_init.php
, таким образом вы снова запустите сайт, но стоит отметить, что весь функционал, который был
прописан в init.php
будет неработоспособным, поэтому переименование файла - не решение проблемы, а временная мера,
которая поможет быстро восстановить работу сайта.