OnEndBufferContent
функция-обработчик( Frame::endBuffering )
Вызывается при выводе буферизированного контента.
Параметры
Без параметров
![]()
Сообщение не промодерировано, возможны ошибки и неточности.
| ||||
Обратите внимание, что в событии OnEndBufferContent нельзя использовать конструкции вида ob_start(), вызывающую ошибку при этом: ob_start(): Cannot use output buffering in output buffering display handlers (0) а следовательно в обработчике событий OnEndBufferContent не допускается использовать старый d0 класс CPHPCache, который вызывает ob_start() у себя под капотом. Решение - использовать класс d7 \Bitrix\Main\Data\Cache с вызовом \Bitrix\Main\Data\Cache::noOutput() перед запуском \Bitrix\Main\Data\Cache::startDataCache() | ||||
![]()
Сообщение не промодерировано, возможны ошибки и неточности.
| ||
Можно получать ошибку вида:
Что для этой ошибки достаточно: - Использование в событии OnEndBufferContent функционала сохранения кеша через \Bitrix\Main\Data\Cache - Подключен только prolog_before.php | ||
![]()
Алексей Попович
| ||||||
Понадобилось тут для СЕО при количестве выбранных параметров фильтрации каталога задавать тег
Итого тело функции завершения буферизации приняло вид:
| ||||||
![]()
Дмитрий Ипатов
| ||||
Метод из последнего сообщения работает не очень быстро лучше использовать данный метод:
Пока что убираем лишние пробелы и строки из html вывода следующим кодом, добавить в init.php
P.S. В режиме правки отключаем сжатие html для админа
| ||||
![]()
Дмитрий Ипатов
| ||
| ||
![]()
Сергей Покоев
| ||
| ||
![]()
Сергей Покоев
| ||||
Например выведем в админке надпись:
| ||||
![]()
Evgenius
|
Видимо, в предыдущем комментарии переменная $content все-таки должна передаваться по ссылке.
|
![]()
Александр Черкасов
| ||
Вопрос: Возможно ли перед выводом страници пользователю, провести небольшую ее обработку? Есть ли какие-либо встроенные стредства?
Ответ:
Источник: Vadim Dumbravanu в форуме | ||
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.