Иногда возникает необходимость в использовании классов и функций Битрикс в простом php-файле который должен отдавать какие-либо данные (например xml, json и т.д.).
Но для того чтобы функции CMS Битрикс были доступны в нашем php-скрипте в его начале должна быть строчка с подключением верхней части шаблона:
<?php
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
В итоге скрипт отобразит не только нужные данные, но и шапку шаблона. Чтобы это исправить можно добавить данный вывод в буфер и затем очистить его.
Пример простенького скрипта использующего функции CMS Битрикс для проверки авторизованного пользователя на принадлежность к группе администраторов:
<?php
ob_start(); //стартуем буферизацию
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
ob_end_clean(); //очищаем буфер
ob_end_flush(); //закрываем его
//Далее код использующий функционал Битрикс
global $USER;
if (!is_object($USER)) $USER = new CUser;
if ($USER->IsAdmin()) echo "Вы администратор";
?>
Лично я делаю так =)
UPD 2019: Более правильный вариант тут - http://mrdeveloper.ru/create-empty-bitrix-page
- Вперед
- Назад