41  /  382
Справочник

Как вывести произвольный контент в шаблоне сайта и компонента

Просмотров: 67737
Дата последнего изменения: 24.10.2020
Роберт Басыров
Сложность урока:
3 уровень - средняя сложность. Необходимо внимание и немного подумать.
1
2
3
4
5
Недоступно в лицензиях:
Ограничений нет

Усовершенствованные методы буферизации в шаблоне позволяют более не использовать CBitrixComponentTemplate::EndViewTarget() ввиду того, что конец шаблона вызывает завершение буферизации автоматически.

Описанные ниже способы по своей сути похожи на Включаемые области. Только Включаемая область это файл подключаемый в шаблоне сайта, а указанные методы - это область, которая формируется в коде шаблона.

Можно использовать как в шаблоне сайта, так и в шаблоне компонента.

Теперь есть поддержка стандартного кеширования в компонентах.

  • template.php:
    <?$this->SetViewTarget("sidebar");?>
    
    	<div class="element-filter">
    		<!--вывод фильтра -->
    	</div>
    
    <?$this->EndViewTarget();?>
    
    <div class="element-list">
    	<!--вывод списка -->
    </div>
  • header.php:
    <div id="sidebar">
    	<?$APPLICATION->ShowViewContent("sidebar")?>
    </div>

Методы, доступные в шаблоне (через $this)

  • CBitrixComponentTemplate::SetViewTarget($view, $pos)
  • CBitrixComponentTemplate::EndViewTarget()

Методы глобального объекта $APPLICATION

где:

  • $view – идентификатор буферизируемой области;
  • $content – буферизируемый контент;
  • $pos – сортировка вывода контента.

Примечание: одному идентификатору $view может соответствовать несколько буферов. Последовательность вывода контента определяется сортировкой $pos.


46
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии