Включаемые области
Включаемая область - это специально выделенная область на странице сайта, которую можно редактировать отдельно от основного содержания страницы. Реализуется с помощью специального программного компонента.
Сама фишка включаемой области в том, что она предоставляет возможность администратору редактировать информацию этой области из визуальной части сайта, без привлечения разработчиков.
Управление включаемыми областями
Вставим на тестовой страничке включаемую область, для этого откроем ее на редактирование, в компонентах откроем служебное, включаемые области, и перетащим компонент в форму редактирования.
Появилась форма с параметрами компонента, и давайте пробежимся по ее настройкам:
Шаблон компонента
здесь он установлен по дифолду, при желании можем создать свойПоказывать включаемую область
можно установить три параметра (для страницы, для раздела, из файла).
Для страницы
соответственно будет отображаться включаемая область только для текущей страницы
Для раздела
только к определенному разделу и его подразделов, которые унаследуют этот параметр
Из файла
включаемая область выводиться из файла, расположив компонент в дизайне шаблона сайта, она будет отображаться на всех страничка сайтПуть к файлу области
при выборе показывать из файла доступен еще один параметр, в котором можно задавать полный путь от корня сайта к файлу с информацией, которую надо вывести в этой части сайтаШаблон области по умолчанию
выводится список шаблонов созданных в системе. Располагаются они в данной директории/bitrix/templates/.default/page_templates/
. Или можно прописать свой путь к другому файлуСуффикс имени файла включаемой области
поле принимает суффикс, который будет добавляться к имени файлов включаемой области. Страницы с таким суффиксом будут восприниматься как включаемая область которую нужно подгрузитьРекурсивное подключение включаемых областей разделов
данная опция появляется, когда устанавливаем показывать включаемую область для раздела. При отмеченной области будут подключаться рекурсивно. Более подробно разберем далее
Вызов
Пример вызова:
$APPLICATION->IncludeComponent(
"bitrix:main.include",
"",
array(
"AREA_FILE_SHOW" => "sect",
"AREA_FILE_SUFFIX" => "inc",
"AREA_FILE_RECURSIVE" => "Y",
"EDIT_TEMPLATE" => "standard.php"
)
);
Описание параметров:
AREA_FILE_SHOW
показывать включаемую область, возможные значения:
sect
показывать для раздела, область будет являться включаемой для всего раздела
page
показывать для страницы, область будет являться включаемой только для текущей страницы
file
показывать информацию из файла. Если компонент расположить в шаблоне дизайна сайта, то информация из файла будет выводиться на всем сайтеPATH
путь к файлу области. Поле доступно, если выбрано «Показывать включаемую область из файла». Задается полный путь от корня сайта к файлу с информацией, которую надо вывести в этой части сайтаAREA_FILE_SUFFIX
суффикс имени файла включаемой области. Поле предназначено для указания суффикса, который будет добавляться к именам файлов включаемых областей. Страницы с таким суффиксом будут восприниматься как включаемые областиAREA_FILE_RECURSIVE [Y|N]
рекурсивное подключение включаемых областей разделов. Настройка доступна при отмеченной области «Показывать включаемую область» (AREA_FILE_SHOW) в значение для раздела (sect). При отмеченной опции включаемые области разделов будут подключаться рекурсивно, т.е. если в папке более низкого уровня есть своя включаемая область, то она будет показана. Если же текущий раздел не имеет своей включаемой области, то рекурсивно до корня сайта будут проверяться все разделы до самого верхнего и будет выведена первая встретившаяся включаемая областьEDIT_TEMPLATE
шаблон области по умолчанию. Доступны все шаблоны страниц, созданные в системе. Они располагаются в разделе/bitrix/templates/.default/page_templates/
Шаблон области по умолчанию
Включаемые области может создаваться на основе шаблонов, хранящихся в папках с именем /page_templates/
:
-
/bitrix/templates/.default/page_templates/
если данный шаблон включаемой области используется для всех шаблонов дизайна сайта -
/bitrix/templates/<идентификатор шаблона>/page_templates/
если для шаблона сайта используются отдельные шаблоны включаемых областей
Чтобы в визуальном редакторе можно было выбирать шаблон, на основе которого создается редактируемая область, список
шаблонов для редактируемых областей должен быть добавлен в файл .content.php
.
Файл .content.php
хранится в папке /page_templates/
в каталоге соответствующего шаблона сайта. Пример содержимого файла:
<?
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
IncludeTemplateLangFile(__FILE__);
$TEMPLATE["standard.php"] = Array("name"=>GetMessage("standart"), "sort"=>1);
$TEMPLATE["page_inc.php"] = Array("name"=>GetMessage("page_inc"), "sort"=>2);
$TEMPLATE["sect_inc.php"] = Array("name"=>GetMessage("sect_inc"), "sort"=>3);
?>
Следует обратить внимание на то, что имя шаблона может быть передано параметром при подключении редактируемой области
в шаблоне сайта ("TEMPLATE"=>"page_inc.php"
в примере ниже).
Если подключение редактируемых областей выполняется с помощью PHP функции IncludeFile(), помещаемой в соответствующие места шаблона дизайна, то код может иметь такой вид:
<?
$APPLICATION->IncludeFile(substr($APPLICATION->GetCurPage(),
0, strlen($APPLICATION->GetCurPage())-4)."_inc.php", Array(),
Array("MODE"=>"html", "NAME"=>GetMessage("PAGE_INC"), "TEMPLATE"=>"page_inc.php"));
?>
<?
$APPLICATION->
IncludeFile($APPLICATION->GetCurDir()."sect_inc.php", Array(), Array("MODE"=>"html",
"NAME"=>GetMessage("SECT_INC"), "TEMPLATE"=>"sect_inc.php"));
?>