Включаемые области
Включаемая область — это специально выделенная область на странице сайта, которую можно редактировать отдельно от основного содержания страницы. Реализуется с помощью специального программного компонента.
Сама фишка включаемой области в том, что она предоставляет возможность администратору редактировать информацию этой области из визуальной части сайта, без привлечения разработчиков.
Управление включаемыми областями
Вставим на тестовой страничке включаемую область, для этого откроем ее на редактирование, в компонентах откроем служебное, включаемые области, и перетащим компонент в форму редактирования.
Появилась форма с параметрами компонента, и давайте пробежимся по ее настройкам:
Шаблон компонентаздесь он установлен по дифолду, при желании можем создать свойПоказывать включаемую областьможно установить три параметра (для страницы, для раздела, из файла).
Для страницысоответственно будет отображаться включаемая область только для текущей страницы
Для разделатолько к определенному разделу и его подразделов, которые унаследуют этот параметр
Из файлавключаемая область выводиться из файла, расположив компонент в дизайне шаблона сайта, она будет отображаться на всех страничка сайтПуть к файлу областипри выборе показывать из файла доступен еще один параметр, в котором можно задавать полный путь от корня сайта к файлу с информацией, которую надо вывести в этой части сайтаШаблон области по умолчаниювыводится список шаблонов созданных в системе. Располагаются они в данной директории/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"));
?>