Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Как вывести страницу без header и footer вставок?

00 голосов
2
Для AJAX вещей нужно что бы java скрипт получал чистые данные без вставок шаблона header и footer.
Пока что получалось добиться этого только настроив условия применения шаблона,на параметр URL, что я считаю очень не удобно, при переносе кода получается куча проблем, если забыть настроить пустой шаблон под нужный файл.
Тут есть способ
http://dev.1c-bitrix.ru/community/forums/forum6/topic27741/
но со временем что то в прологах может поменяться и все придется править.
Я видел скрипт /bitrix/modules/sale/admin/1c_exchange.php
там вставки как в обычной странице но компонент bitrix:sale.export.1c как то избавляет страницу от header и footer.
Вот как он это делает, я не могу понять, скрипт который вставляется после, влияет на вывод данных до него! :D
спросил 26 Фев, 14 от GIN1 (200 баллов)

2 Ответы

00 голосов
Если скрипт будет в отдельном файле, то экономичнее все же подключать только один пролог:
Код
<?
define('STOP_STATISTICS', true);
require_once($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/include/prolog_before.php');
$GLOBALS['APPLICATION']->RestartBuffer();

[ajax code]
?>


В противном случае просто перед выводом аякс-результата очистите буфер:
$GLOBALS['APPLICATION']->RestartBuffer();
и сделайте die() в конце.
ответил 02 Авг, 14 от Delp (7,220 баллов)
00 голосов
Цитата
Sergey Leshchenko пишет:
В противном случае просто перед выводом аякс-результата очистите буфер: $GLOBALS['APPLICATION']->RestartBuffer(); и сделайте die() в конце.

Вот спасибо. :)
То есть все скидывается в буфер а потом выводится.

Код
<?
define('STOP_STATISTICS', true);
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetTitle("Title");
$GLOBALS['APPLICATION']->RestartBuffer(); 
?>
123
<?die() ;?>

Получаем текст 123 без лишнего.
Но из за экономии пожалуй буду использовать вариант предложенный Сергеем.
ответил 05 Дек, 14 от GIN1 (200 баллов)

Похожие вопросы

0 голосов
1 ответ
спросил 30 Авг, 13 от SAILLER (160 баллов)
0 голосов
1 ответ
спросил 18 Фев, 14 от Alleanor (180 баллов)
0 голосов
0 ответов
0 голосов
5 ответов
спросил 07 Ноя, 13 от Arikka (100 баллов)