1с битрикс параметры компонента
В файлах компонентов доступны стандартные компоненты, благодаря которым можно строить, к примеру, относительные пути. Такие компоненты избавляют от необходимости прописания абсолютных величин в файлах компонента.
1. В файле component.php доступны (в файле самого компонента):
очевидные и постоянно используемые:
- $arParams — параметры, чтение/изменение, затрагивает одноименный член класса компонента
- $arResult — результат, чтение/изменение, затрагивает одноименный член класса компонента
- $APPLICATION, $USER, $DB — все доступны, можно не объявлять их как global в файле component.php
- $this — естественно ссылка на текущий вызванный компонент (объект класса CBitrixComponent), можно использовать все методы класса CBitrixComponent
дополнительные, локальные для удобства:
- $componentPath — путь к вызванному компоненту от DOCUMENT_ROOT (пример: /bitrix/components/bitrix/iblock.list)
- $componentName — имя вызванного компонента (например: bitrix:iblock.list)
- $componentTemplate — шаблон вызванного компонента (например: «my_template»)
аналогичные значения, если компонент вызван в составе другого компонента, идут отсылки на родительский компонент:
- $parentComponentPath
- $parentComponentName
- $parentComponentTemplate
2. В файле result_modifier.php доступны (в файле модификации шаблона компонента):
- $arParams - параметры, чтение, изменение не затрагивает одноименный член компонента, но изменения тут отразятся на $arParams в файле template.php
- $arResult — результат, чтение/изменение, затрагивает одноименный член класса компонента
- $APPLICATION, $USER, $DB - как обычно, объявлять их как global избыточно $this — ссылка на текущий шаблон (объект, описывающий шаблон, тип CBitrixComponentTemplate)
3. В файле template.php доступны:
- $arParams - параметры, чтение, изменение не затрагивает одноименный член компонента
- $arResult — результат, чтение/изменение, затрагивает одноименный член класса компонента (ссылка на поле компонента)
- $APPLICATION, $USER, $DB — как обычно, объявлять их как global избыточно
- $this - ссылка на текущий шаблон (объект, описывающий шаблон, тип CBitrixComponentTemplate)
- $templateName — имя шаблона компонента (например: «.dеfault»)
- $templateFile — путь к файлу шаблона от DOCUMENT_ROOT (напр. «/bitrix/components/wexpert/iblock.list/templates/.default/template.php»)
- $templateFolder - путь к папке с шаблоном от DOCUMENT_ROOT (напр. «/bitrix/components/bitrix/iblock.list/templates/.default»)
- $componentPath - путь к папке с компонентом от DOCUMENT_ROOT (напр. «/bitrix/components/bitrix/iblock.list»)
- $component — ссылка на текущий вызванный компонент (тип CBitrixComponent)
- $templateData — массив для записи, обратите внимание, таким образом можно передать данные из template.php в файл component_epilog.php, причем эти данные попадают в кеш, т.к. файл component_epilog.php исполняется на каждом хите.
4. В файле component_epilog.php (эпилог компонента) доступны:
- $arParams - параметры, чтение, изменение не затрагивает одноименный член компонента
- $arResult — результат, чтение/изменение не затрагивает одноименный член класса компонента
- $APPLICATION, $USER, $DB — аналогично, эта «троица» доступна
- $componentPath — путь к папке с компонентом от DOCUMENT_ROOT (напр. «/bitrix/components/bitrix/iblock.list»)
- $component — ссылка на $this, читай на строку ниже
- $this — естественно ссылка на текущий вызванный компонент (объект класса CBitrixComponent), можно использовать все методы класса CBitrixComponent
дополнительные, не явные в component_epilog.php:
- $epilogFile — путь к файлу component_epilog.php относительно DOCUMENT_ROOT
- $templateName - имя шаблона компонента (например: «.dеfault»)
- $templateFile — путь к файлу шаблона от DOCUMENT_ROOT (напр. «/bitrix/components/bitrix/iblock.list/templates/.default/template.php»)
- $templateFolder — путь к папке с шаблоном от DOCUMENT_ROOT (напр. «/bitrix/components/bitrix/iblock.list/templates/.default»)
- $templateData — обратите внимание, таким образом можно передать данные из template.php в файл component_epilog.php, причем эти данные закешируются и будут доступны в component_epilog.php на каждом хите!
и в конце, небольшой пример: чтобы получить в result_modifier.php значение $templateFolder, необходимо воспользоваться методами текущего шаблона:
Чтобы передать данные из вложенного в комплексный компонента, можно в компоненте-потомке обратиться к результирующему массиву родительского компонента:
В файле .parameters.php содержится описание входных параметров компонента. Это описание применяется для работы с компонентом из среды БУС (например, в визуальном редакторе), а так же при работе в режиме редактирования сайта. При работе самого компонента (при обращении к странице, на которой расположен компонент) описание не используется и файл .parameters.php не подключается.
[spoiler]
Данные .parameters.php нужны исключительно для того, чтобы сформировать форму для ввода свойств компонента в среде БУС (например, в визуальном редакторе).
Файл .parameters.php должен находиться в папке компонента. Языковой файл подключается автоматически (должен лежать в папке /lang//.parameters.php относительно папки компонента).
Структура типичного файла .parameters.php такова
То есть в файле определяется массив $arComponentParameters, который описывает входные параметры компонента. Если необходимо, то производится выборка каких-либо дополнительных данных. Например, для формирования выпадающего списка типов информационных блоков (входной параметр IBLOCK_TYPE_ID) выбираются все активные типы.
Массив $arComponentParameters имеет следующие ключи:
"GROUPS" - значением этого ключа является массив групп параметров компонента. Параметры в визуальных средствах среды БУС (например, в визуальном редакторе) группируются. Группы в среде БУС располагаются в том порядке, в котором заданы в файле. Массив групп параметров компонента состоит из элементов следующего вида
"PARAMETERS" - значением этого ключа является массив параметров компонента. В каждой группе параметров параметры располагаются в том порядке, в котором заданы в файле. Массив обычных параметров компонента состоит из элементов следующего вида
Существуют особые параметры, которые стандартизованы и которые нет необходимости описывать полностью. Достаточно указать, что они есть. Например,
Первый из указанных параметров - переключатель "а не нужно ли компоненту установить заголовок страницы", а второй - время кеширования.
Цитатник веб-разработчиков В тексте курса вы встретите цитаты, высказанные в разное время разработчиками системы и разработчиками проектов на базе Bitrix Framework. Надеемся, что такие неформальные замечания внесут некоторое разнообразие в процесс изучения. Заодно опытные специалисты поделятся и своим опытом.
Имена авторов цитат даются в том написании, в каком авторы зарегистрировали себя на сайте "1С-Битрикс". .
Курс для разработчиков - продолжение линейки учебных курсов по Bitrix Framework. Получение сертификата по курсу рекомендуется после успешной сдачи тестов по всей линейке курсов, так как без понятия о работе Контент-менеджера и Администратора создание успешных сайтов будет затруднено.
Чтобы научиться программировать в Bitrix Framework, нет необходимости изучать всю линейку курсов. Но есть моменты, которые необходимо знать разработчикам о системе, они раскрыты в начальных курсах:
- Интерфейс программы - в главе Элементы управления курса Контент-менеджер.
- Компоненты 2.0 (начальные сведения) в главе Компоненты 2.0 (начальные сведения) курса Контент-менеджер.
- Информационные блоки - в главе Информационные блоки (начальные сведения) курса Контент-менеджер.
- Управление доступом к файлам, элементам контента, модулям и другие права доступа в главе Управление доступом курса Администратор. Базовый.
- Работа с инструментами системы - в главе Работа с инструментами курса Администратор. Базовый.
- Модуль Поиск - в главе Поиск курса Администратор. Базовый.
- Вся информация по администрированию модулей размещена в курсах:
-
- модули "1С-Битрикс: Управление сайтом" - модули "1С-Битрикс: Управление сайтом", связанные с коммерческой деятельностью в Интернете. - модули "1С-Битрикс: Корпоративный портал"
Как построен курс
Общепринятая градация квалификации разработчиков в рамках курса обозначает что:
- Junior сможет создавать простые сайты работая со штатными компонентами и модифицируя их шаблоны.
- Middle разработчик может работать с API Bitrix Framework.
- Senior умеет работать над производительностью и безопасностью сайтов, создавать свои модули и компоненты.
Примечание: Такое построение удобно для пошагового изучения принципов работы Bitrix Framework. По этому же принципу построены и тесты. Но такая структура не очень удобна для использования содержания курса как постоянного источника информации. Что бы переключить курс в режим Справочника, воспользуйтесь переключателем в верхнем правом углу шапки курса.
Начальные требования к подготовке
Для успешного изучения курса и овладения мастерством разработки сайтов на Bitrix Framework необходимо владеть (хотя бы на начальном уровне):
- основами PHP, баз данных;
- основами HTML, CSS.
У нас часто спрашивают, сколько нужно заплатить
Курс полностью бесплатен. Изучение курса, прохождение итоговых тестов и получение сертификатов - ничего из этого оплачивать не нужно.
Ещё у нас есть Академия 1С-Битрикс, где можно обучиться на платной основе на курсах нашей компании либо наших партнёров.
Баллы опыта
В конце каждого урока есть кнопка Прочитано! . При клике на неё в Вашу итоговую таблицу опыта добавляется то количество баллов, которое указано в прочитанном После нажатия кнопки Прочитано! появится
окно подтверждения:
уроке.
Периодически мы заново оцениваем сложность уроков, увеличивая/уменьшая число баллов, поэтому итоговое количество набранных Вами баллов может отличаться от максимально возможного. Не переживайте! Отличный результат - это если общее число набранных Вами баллов отличается от максимального на 1-2%.
Тесты
После изучения курса вам будет предложено пройти тесты на сертификацию. При успешной сдаче последовательности тестов на странице Моё обучение можно просмотреть результат обучения и загрузить сертификат в формате PDF.
Комментарии к статьям
Что дальше?
Одновременно с изучением курса Разработчик Bitrix Framework вам придётся обращаться к информации о других технологиях Bitrix Framework. Эта информация размещена в следующих курсах:
Для преподавания офлайн
Если данный курс берётся в качестве основы для офлайнового преподавания, то рекомендуемая продолжительность: 5 дней (40 академических часов).
Если нет интернета
iPhone:
FBReader
CoolReader
iBook
Bookmate
Windows:
Calibre
FBReader
Icecream Ebook Reader
Плагины для браузеров:
EpuBReader – для Firefox
Readium – для Google Chrome
iOS
Marvin for iOS
ShortBook
обновляются периодически, поэтому возможно некоторое отставание их от онлайновой версии курса. Версия файла - от 10.03.2022.
Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Цитатник веб-разработчиков В тексте курса вы встретите цитаты, высказанные в разное время разработчиками системы и разработчиками проектов на базе Bitrix Framework. Надеемся, что такие неформальные замечания внесут некоторое разнообразие в процесс изучения. Заодно опытные специалисты поделятся и своим опытом.
Имена авторов цитат даются в том написании, в каком авторы зарегистрировали себя на сайте "1С-Битрикс". .
Курс для разработчиков - продолжение линейки учебных курсов по Bitrix Framework. Получение сертификата по курсу рекомендуется после успешной сдачи тестов по всей линейке курсов, так как без понятия о работе Контент-менеджера и Администратора создание успешных сайтов будет затруднено.
Чтобы научиться программировать в Bitrix Framework, нет необходимости изучать всю линейку курсов. Но есть моменты, которые необходимо знать разработчикам о системе, они раскрыты в начальных курсах:
- Интерфейс программы - в главе Элементы управления курса Контент-менеджер.
- Компоненты 2.0 (начальные сведения) в главе Компоненты 2.0 (начальные сведения) курса Контент-менеджер.
- Информационные блоки - в главе Информационные блоки (начальные сведения) курса Контент-менеджер.
- Управление доступом к файлам, элементам контента, модулям и другие права доступа в главе Управление доступом курса Администратор. Базовый.
- Работа с инструментами системы - в главе Работа с инструментами курса Администратор. Базовый.
- Модуль Поиск - в главе Поиск курса Администратор. Базовый.
- Вся информация по администрированию модулей размещена в курсах:
-
- модули "1С-Битрикс: Управление сайтом" - модули "1С-Битрикс: Управление сайтом", связанные с коммерческой деятельностью в Интернете. - модули "1С-Битрикс: Корпоративный портал"
Как построен курс
Общепринятая градация квалификации разработчиков в рамках курса обозначает что:
- Junior сможет создавать простые сайты работая со штатными компонентами и модифицируя их шаблоны.
- Middle разработчик может работать с API Bitrix Framework.
- Senior умеет работать над производительностью и безопасностью сайтов, создавать свои модули и компоненты.
Примечание: Такое построение удобно для пошагового изучения принципов работы Bitrix Framework. По этому же принципу построены и тесты. Но такая структура не очень удобна для использования содержания курса как постоянного источника информации. Что бы переключить курс в режим Справочника, воспользуйтесь переключателем в верхнем правом углу шапки курса.
Начальные требования к подготовке
Для успешного изучения курса и овладения мастерством разработки сайтов на Bitrix Framework необходимо владеть (хотя бы на начальном уровне):
- основами PHP, баз данных;
- основами HTML, CSS.
У нас часто спрашивают, сколько нужно заплатить
Курс полностью бесплатен. Изучение курса, прохождение итоговых тестов и получение сертификатов - ничего из этого оплачивать не нужно.
Ещё у нас есть Академия 1С-Битрикс, где можно обучиться на платной основе на курсах нашей компании либо наших партнёров.
Баллы опыта
В конце каждого урока есть кнопка Прочитано! . При клике на неё в Вашу итоговую таблицу опыта добавляется то количество баллов, которое указано в прочитанном После нажатия кнопки Прочитано! появится
окно подтверждения:
уроке.
Периодически мы заново оцениваем сложность уроков, увеличивая/уменьшая число баллов, поэтому итоговое количество набранных Вами баллов может отличаться от максимально возможного. Не переживайте! Отличный результат - это если общее число набранных Вами баллов отличается от максимального на 1-2%.
Тесты
После изучения курса вам будет предложено пройти тесты на сертификацию. При успешной сдаче последовательности тестов на странице Моё обучение можно просмотреть результат обучения и загрузить сертификат в формате PDF.
Комментарии к статьям
Что дальше?
Одновременно с изучением курса Разработчик Bitrix Framework вам придётся обращаться к информации о других технологиях Bitrix Framework. Эта информация размещена в следующих курсах:
Для преподавания офлайн
Если данный курс берётся в качестве основы для офлайнового преподавания, то рекомендуемая продолжительность: 5 дней (40 академических часов).
Если нет интернета
iPhone:
FBReader
CoolReader
iBook
Bookmate
Windows:
Calibre
FBReader
Icecream Ebook Reader
Плагины для браузеров:
EpuBReader – для Firefox
Readium – для Google Chrome
iOS
Marvin for iOS
ShortBook
обновляются периодически, поэтому возможно некоторое отставание их от онлайновой версии курса. Версия файла - от 10.03.2022.
Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Файл .parameters.php содержит описание параметров компонента. Данные файла нужны для отображения формы настроек компонента:
Структура файла может иметь следующий вид: Для удобства я не использовал lang файл для описания параметров (а-та-та, так делать плохо). Как видно из кода, в файле формируется массив $arComponentParameters, который состоит из двух ключей: GROUPS и PARAMETERS.
- ADDITIONAL_SETTINGS - появляется при указании SET_TITLE;
- CACHE_SETTINGS - настройки кэша, появляется при указании CACHE_TIME;
- SEF_MODE - настройки ЧПУ;
- URL_TEMPLATES - шаблоны ссылок;
- VISUAL - настройки внешнего вида;
- DATA_SOURCE - источник данных, ID и TYPE инфоблока;
- BASE - основные параметры;
- AJAX_SETTINGS - настройки AJAX.
Описание группы содержит два ключа: NAME - название группы выводимое на форме и SORT - внутренняя сортировка.
- LIST для списка
- STRING для поля ввода
- CHECKBOX для чекбокса
- CUSTOM для своих элементов управления
В некоторых случаях требуется заполнять списки значениями из инфоблоков, в этом случае можно использовать средства API и формировать массивы для VALUES до определения массива $arComponentParameters. В следующем примере для параметров IBLOCK_TYPE и IBLOCK_ID формируются массивы $paramIBlockTypes и $paramIBlocks соответственно. Заметьте, что при использовании "REFRESH" => "Y" , значения выбранных свойств можно получить из массива $arCurrentValues . Таким образом можно реализовать сложную логику зависимостей между параметрами.
Помимо .parameters.php , хранящегося в папке компонента, стандартные настройки можно дополнять, создавая одноименные файлы в папке шаблона. Описанные в этом файле параметры будут отображаться только если выбран соответствующий шаблон компонента. Структура файла:
Читайте также: