Как вывести произвольный контент в шаблоне сайта и компонента
Усовершенствованные методы буферизации в шаблоне позволяют более не использовать CBitrixComponentTemplate::EndViewTarget() ввиду того, что конец шаблона вызывает завершение буферизации автоматически.
Описанные ниже способы по своей сути похожи на Включаемые области. Только Включаемая область это файл подключаемый в шаблоне сайта, а указанные методы - это область, которая формируется в коде шаблона.
Можно использовать как в шаблоне сайта, так и в шаблоне компонента.
Теперь есть поддержка стандартного кеширования в компонентах.
- template.php:
<?$this->SetViewTarget("sidebar");?>
<div class="element-filter">
<!--вывод фильтра -->
</div>
<?$this->EndViewTarget();?>
<div class="element-list">
<!--вывод списка -->
</div>
Методы, доступные в шаблоне (через $this)
- CBitrixComponentTemplate::SetViewTarget($view, $pos)
- CBitrixComponentTemplate::EndViewTarget()
Методы глобального объекта $APPLICATION
где:
$view– идентификатор буферизируемой области;$content– буферизируемый контент;$pos– сортировка вывода контента.
Примечание: одному идентификатору $view может соответствовать несколько буферов. Последовательность вывода контента определяется сортировкой $pos.