Приложение 1. Основные функции вывода в шаблонах Битрикс.
В основном шаблоне:
<?$APPLICATION->ShowTitle()?> - собственно вывод тайтла в основном шаблоне сайта
<?$APPLICATION->ShowHead()?> - подключение для вывода в шаблоне сайта основных полей тега: мета-теги Content-Type, robots, keywords, description; стили CSS; скрипты
<?$APPLICATION->ShowPanel();?> - выводит панель управления администратора
<?=SITE_TEMPLATE_PATH?> - подставляет путь к шаблону
<?$APPLICATION->ShowTitle(false);?> - заголовок (в h1 например использовать)
ShowHead разбить на составляющие:
<meta http-equiv="Content-Type" content="text/html; charset=<?=LANG_CHARSET;?>" /> - Установка кодировки сайта
<? $APPLICATION->ShowMeta("keywords")?> - Вывод мета тега keywords
<? $APPLICATION->ShowMeta("description")?> - Вывод мета тега description
<? $APPLICATION->ShowCSS();?> - Подключение основных файлов стилей template_styles.css и styles.css
<? $APPLICATION->ShowHeadStrings()?> - Отображает специальные стили, JavaScript
<? $APPLICATION->ShowHeadScripts()?> - Вывода служебных скриптов
В шаблонах компонентов:
<img src="<?=$arSection["PICTURE"]["SRC"]?>" title="<?=$arSection["NAME"]?>" border="0"/> - картинка раздела инфоблока.
<?=$arSection["DESCRIPTION"]?> - описание раздела инфоблока
<?echo $arItem["NAME"]?> - название
<?echo $arItem["DETAIL_PAGE_URL"]?> - ссылка на детальную новость (статью)
<?echo $arItem["PREVIEW_TEXT"];?> - текст анонса
<?echo $arResult["DETAIL_TEXT"];?> - детальный текст
<?=$arItem["PREVIEW_PICTURE"]["SRC"]?> - изображение анонса
<?=$arItem["DETAIL_PICTURE"]["SRC"]?> - изображение детальное
<?=$arResult['DISPLAY_ACTIVE_FROM']?> - дата начала активности
<?=$arItem['DATE_CREATE']?> - дата создания элемента инфоблока
Приложение 2. Образцы вызова стандартных компонентов 1С-Битрикс.
Функция подключения компонента:
$APPLICATION->IncludeComponent(
componentName, // имя компонента
componentTemplate, // шаблон компонента, пустая строка если шаблон по умолчанию
arParams=array(), // параметры
parentComponent=null,
arFunctionParams=array()
);
Включаемая область для раздела:
<?$APPLICATION->IncludeComponent("bitrix:main.include", "", Array("AREA_FILE_SHOW" => "sect", "AREA_FILE_SUFFIX" => "inc", "AREA_FILE_RECURSIVE" => "Y", "EDIT_MODE" => "html", "EDIT_TEMPLATE" => "" //),false);?>AREA_FILE_RECURSIVE — рекурсивное подключение (Y,N)
EDIT_MODE — режим редактирования (html, php)
EDIT_TEMPLATE — шаблон области по умолчанию, должен лежать в директории page_templates шаблона сайта
Включаемая область для страницы:
<?$APPLICATION->IncludeComponent("bitrix:main.include", "", Array("AREA_FILE_SHOW" => "page", "AREA_FILE_SUFFIX" => "inc", "EDIT_MODE" => "html", "EDIT_TEMPLATE" => ""),false);?>Включаемый файл шаблона:
<?$APPLICATION->IncludeFile($APPLICATION->GetTemplatePath("file.php"),Array(),Array("MODE"=>"html"));?>Подключается file.php из шаблона
Цепочка навигации:
<?$APPLICATION->IncludeComponent("bitrix:breadcrumb", "", Array("START_FROM" => "0", "PATH" => "", "SITE_ID" => "-"),false);?>Горизонтальное меню:
<?$APPLICATION->IncludeComponent("bitrix:menu", "horizontal_multilevel", array("ROOT_MENU_TYPE" => "left", "MENU_CACHE_TYPE" => "N", "MENU_CACHE_TIME" => "3600", "MENU_CACHE_USE_GROUPS" => "Y", "MENU_CACHE_GET_VARS" => array(), "MAX_LEVEL" => "1", "CHILD_MENU_TYPE" => "left", "USE_EXT" => "N", "ALLOW_MULTI_SELECT" => "N"), false);?>ROOT_MENU_TYPE — тип меню верхнего уровня
CHILD_MENU_TYPE — тип меню остальных уровней
MAX_LEVEL — максимальный уровень вложенности
Вертикальное меню:
<?$APPLICATION->IncludeComponent("bitrix:menu", "vertical_multilevel", array("ROOT_MENU_TYPE" => "left", "MENU_CACHE_TYPE" => "N", "MENU_CACHE_TIME" => "3600", "MENU_CACHE_USE_GROUPS" => "Y", "MENU_CACHE_GET_VARS" => array(), "MAX_LEVEL" => "1", "CHILD_MENU_TYPE" => "left", "USE_EXT" => "N", "ALLOW_MULTI_SELECT" => "N"), false);?>Форма авторизации:
REGISTER_URL — путь к странице регистрации
PROFILE_URL — путь к странице профиля пользователя
Форма поиска:
<?$APPLICATION->IncludeComponent("bitrix:search.form", "", Array("PAGE" => "#SITE_DIR#search/index.php"),false);?>PAGE — путь к странице поиска
Список новостей:
<?$APPLICATION->IncludeComponent("bitrix:news.list", "", Array("DISPLAY_DATE" => "Y", "DISPLAY_NAME" => "Y", "DISPLAY_PICTURE" => "Y", "DISPLAY_PREVIEW_TEXT" => "Y", "AJAX_MODE" => "N", "IBLOCK_TYPE" => "news", "IBLOCK_ID" => $_REQUEST["ID"], "NEWS_COUNT" => "20", "SORT_BY1" => "ACTIVE_FROM", "SORT_ORDER1" => "DESC", "SORT_BY2" => "SORT", "SORT_ORDER2" => "ASC", "FILTER_NAME" => "", "FIELD_CODE" => "", "PROPERTY_CODE" => "", "CHECK_DATES" => "Y", "DETAIL_URL" => "", "PREVIEW_TRUNCATE_LEN" => "", "ACTIVE_DATE_FORMAT" => "d.m.Y", "DISPLAY_PANEL" => "N", "SET_TITLE" => "Y", "SET_STATUS_404" => "N", "INCLUDE_IBLOCK_INTO_CHAIN" => "Y", "ADD_SECTIONS_CHAIN" => "Y", "HIDE_LINK_WHEN_NO_DETAIL" => "N", "PARENT_SECTION" => "", "PARENT_SECTION_CODE" => "", "CACHE_TYPE" => "A", "CACHE_TIME" => "3600", "CACHE_FILTER" => "N", "DISPLAY_TOP_PAGER" => "N", "DISPLAY_BOTTOM_PAGER" => "Y", "PAGER_TITLE" => "Новости", "PAGER_SHOW_ALWAYS" => "Y", "PAGER_TEMPLATE" => "", "PAGER_DESC_NUMBERING" => "N", "PAGER_DESC_NUMBERING_CACHE_TIME" => "36000", "PAGER_SHOW_ALL" => "Y", "AJAX_OPTION_SHADOW" => "Y", "AJAX_OPTION_JUMP" => "N", "AJAX_OPTION_STYLE" => "Y", "AJAX_OPTION_HISTORY" => "N", "AJAX_OPTION_ADDITIONAL" => ""),false);?>DISPLAY_DATE — показывать дату (Y,N)
DISPLAY_NAME — показывать название (Y,N)
DISPLAY_PICTURE — показывать картинку анонса (Y,N)
DISPLAY_PREVIEW_TEXT — показывать анонс (Y,N)
NEWS_COUNT — количество выводимых новостей
Новостная лента:
<?$APPLICATION->IncludeComponent("bitrix:news.line", "", Array("IBLOCK_TYPE" => "news", "IBLOCKS" => "", "NEWS_COUNT" => "20", "FIELD_CODE" => "", "SORT_BY1" => "ACTIVE_FROM", "SORT_ORDER1" => "DESC", "SORT_BY2" => "SORT", "SORT_ORDER2" => "ASC", "DETAIL_URL" => "", "ACTIVE_DATE_FORMAT" => "d.m.Y", "CACHE_TYPE" => "A", "CACHE_TIME" => "300"),false);?>DETAIL_URL — путь к странице детального просмотра, по умолчанию берется из настроек инфоблока
NEWS_COUNT — количество выводимых новостей
Малая корзина:
<?$APPLICATION->IncludeComponent("bitrix:sale.basket.basket.small", "", Array("PATH_TO_BASKET" => "/personal/basket.php", "PATH_TO_ORDER" => "/personal/order.php"),false);?> Приложение 3. Переменные, доступные в шаблоне компонента. В шаблоне используются следующие переменные: · $templateFile – путь к шаблону относительно корня сайта, например /bitrix/components/bitrix/iblock.list/templates/.default/template.php).· $arResult – массив результатов работы компонента.· $arParams – массив входящих параметров компонента, может использоваться для учета заданных параметров при выводе шаблона (например, отображении детальных изображений или ссылок).· $arLangMessages – массив языковых сообщений шаблона (для php шаблонов не устанавливается).· $templateFolder - путь к папке с шаблоном от DOCUMENT_ROOT (например /bitrix/components/bitrix/iblock.list/templates/.default).· $parentTemplateFolder - путь относительно корня сайта к папке шаблона комплексного компонента, в составе которого подключается данный компонент (если компонент подключается самостоятельно, то эта переменная пуста).· $component — ссылка на текущий вызванный компонент (тип CBitrixComponent).· $this - ссылка на текущий шаблон (объект, описывающий шаблон, тип CBitrixComponentTemplate)· $templateName — имя шаблона компонента (например:.dеfault)· $componentPath - путь к папке с компонентом от DOCUMENT_ROOT (напр. /bitrix/components/bitrix/iblock.list)· $templateData — массив для записи, обратите внимание, таким образом можно передать данные из template.php в файл component_epilog.php, причем эти данные попадают в кеш, т.к. файл component_epilog.php исполняется на каждом хите. Литература:- https://alexvaleev.ru/sozdaem-shablon-bitrix/- https://camouf.ru/blog-note/488/- https://dev.1c-bitrix.ru/learning/course/?COURSE_ID=43&LESSON_ID=2829- https://alexvaleev.ru/obraz-component-bitrix/