- Как создать и вывести пользовательское поле раздела в 1C-Bitrix?
- Создание пользовательского поля раздела в 1C-Bitrix
- Вывод пользовательского поля раздела в 1C-Bitrix
- Битрикс как вывести пользовательское свойство раздела
- Как добавить и отобразить свойства у разделов в 1С-Битрикс
- Как добавить и вывести дополнительные поля и свойства раздела в 1С-Битрикс
- 1С-Битрикс как вывести пользовательские поля разделов
- автор: Dmitriy
- Вывод «Пользовательского поля» в разделе каталога
- Битрикс как вывести пользовательское свойство раздела
- Как построен курс
- Начальные требования к подготовке
- У нас часто спрашивают, сколько нужно заплатить
- Баллы опыта
- Тесты
- Комментарии к статьям
- Что дальше?
- Для преподавания оффлайн
- Если нет интернета
Как создать и вывести пользовательское поле раздела в 1C-Bitrix?
С помощью дополнительных полей вы можете нестандартно указать недостающую информацию в разделах вашего сайта.
Лично передо мной встала задача кардинально изменить внешний вид общего списка категорий магазина, а для этого как раз я и прибег к дополнительным полям.
Создание пользовательского поля раздела в 1C-Bitrix
Итак, для того чтобы вам создать свое поле для раздела (категории), сделаем следующее.
2. В левом меню откройте раздел «Контент», а в появившейся навигации, в разделе «Каталог», нажмите на пункт «Каталог товаров».
3. После того, как у вас открылся список ваших разделов, в нужном вы жмете на иконку вызова меню, в котором выбираете пункт «Изменить».
4. На открывшейся странице редактирования каталога вы переключаетесь на вкладку «Доп. поля», а в ней жмете ссылку «Добавить пользовательское свойство».
Кстати говоря, все созданные вами поля будут отображаться как раз в этой вкладке, ниже под ссылкой.
5. После того, как в предыдущем шаге мы перешли по ссылке, у нас откроется форма добавления поля:
Что нас тут по большей части интересует?
- Тип – это тип вводимых данных. Если у вас простой текст, то рекомендую выбирать «Строка», если же у вас число или цена – для них тоже есть свои типы в выпадающем списке.
- Объект. Это то, в каком разделе будет выводиться данное поле. В вашем случае, если вы перешли сюда по ссылке с раздела, будет заполнено автоматически.
- Код поля. Уникальное имя вашего поля (может содержать только A-Z, 0-9 и _). Обязательно запомните это имя, так как оно потребуется нам для вывода.
- Сортировка – порядок вывода поля в общем списке полей раздела.
- Значение по умолчанию – то значение, которое будет заполнено по умолчанию при создании каждого нового раздела.
- Количество строк. Если у вас поле предназначено для заголовка, то лучше всего ставьте «1», если оно служит для заполнения, например, описания – то выставьте «10» или другое удобное для вас количество строк.
- Минимальная/Максимальная длина строки – поля для определения граничных условий длины данных поля. Очень полезная вещь, когда вы задаете некую маску. Например, индекс в России шестизначный, отсюда минимальное и максимальное значение будет «6».
Помимо этого, ниже есть блок языковых настроек (он не убрался на скриншоте). Там вы задаете название поля, которое будет отображаться в списке полей, а также подсказку по его заполнению в разделе. Сложного ничего нет, думаю, сообразите. Остальные параметры я здесь не рассматриваю, так как того, что описано в статье, вам вполне хватит. Если почему-то у вас остались вопросы – задавайте их в комментариях.
После того, как необходимая информация о свойстве (поле) указана – жмете «Сохранить» или «Применить». В случае, если ошибок никаких не возникло, ваше поле будет успешно создано и одновременно доступно в соответствующей вкладке на странице редактирования раздела, о чем я писал ранее.
Можете заполнить ваши поля нужной информацией, а дальше мы поговорим о том, как вывести эти самые поля.
Вывод пользовательского поля раздела в 1C-Bitrix
Теперь логично перейти к выводу созданных ранее нами полей. Все изменения мы будем совершать в теме сайта.
1. Подключитесь к вашему сайту по FTP.
2. Откройте файл, отвечающий за вид разделов. У меня это был файл template.php в папке /bitrix/templates/pandoge_com/components/bitrix/catalog.section.list/sections_list/, где «pandoge_com» – название моей темы. В вашем же случае иерархия папок может немного отличаться.
В нем, в нужном вам месте, вы используете следующую конструкцию внутри перебора массива:
На что здесь нужно обратить внимание?
Переменные $arItems[‘IBLOCK_ID’] и $arItems[‘ID’] в коде должны возвращать вам ID инфоблока и раздела соответственно. Проверяйте отдельно возвращаемые результаты переменных через «echo» или «var_dump».
$my_fields_1 — переменная, содержащая в себе значение конкретного поля. Дублируете всю строку с заменами при необходимости получения нового дополнительного поля.
UF_DOP_TITLE – это имя вашего поля, которое вы задавали при создании в 5-м пункте. Если вдруг вы не записали название поля, то узнать его вы можете следующим образом.
2.2. В левом меню откройте раздел «Настройки». В появившейся навигации выберите пункт «Настройки продукта» — «Пользовательские поля», после чего у вас откроется список со всеми полями, где вы ищете имя вашего поля.
3. После этого ниже (в этом же файле) в нужное место вставляете следующий код для вызова ранее созданного вами поля:
Вывод данных из поля в таком случае происходит только при наличии в нем информации в панели управления вашим сайтом.
На этом, собственно, и все. Вывод полей на самом деле простой, главное – это корректное возвращение данных переменными и заданное имя вашего поля. Если какие моменты показались вам не совсем понятными – не стесняйтесь и спрашивайте об этом в комментариях под данной статьей.
Источник
Битрикс как вывести пользовательское свойство раздела
И снова свойства, но уже разделов.
Очень часто, делая каталог на 1С-Битриксе, требуется задать свойства и разделам, не только элементам. В стандартном функционале у нас есть только изображение и описание.
Чтобы вывести изображение раздела, нужно в шаблоне catalog.section прописать следующий код:
Чтобы было яснее, у меня идет сначала проверка, есть ли фотография, а потом идет вывод фотографии, там class и onclick — это остатки от галереи, не обращайте на них внимания. Если фотографии нет, то ничего и не выводится.
Чтобы вывести описание раздела, в шаблоне catalog.section прописываем код:
Или для раздела news.list, если параметр выдается в виде массива Array:
Теперь самая соль.
Чтобы задать дополнительное свойство раздела, нужно использовать Пользовательские поля.
Заходим в свойства раздела, выбираем вкладку «Доп. свойства» и нажимаем на «Добавить пользовательское поле».
Создаете нужное поле требуемого типа и сохраняете. Потом в Свойствах раздела вы заполняете ваше созданное свойство раздела.
Теперь, самое главное, чтобы вывести свойство раздела (пользовательское поле) нужно, всё в том же шаблоне catalog.section прописать следующий код:
Для НЕ МНОЖЕСТВЕННОГО свойства раздела (пользовательского поля):
Для МНОЖЕСТВЕННОГО свойства раздела (пользовательского поля):
В данном случае код используется CFile::GetPath, чтобы вывести ссылку на файл, дальше обработать ее, думаю, не составит труда.
Таким образом для значения типа данных «Файл» используем:
а, чтобы вывести текстовое значение поля типа данных «Строка»:
Для вывода пользовательского поля в шаблоне catalog.section.list я использовал следующий кода:
8. Вывод пользовательского свойства типа «Привязка к элементам инф.блока» в разделе инфоблока catalog.section.list. Напрмер нужно выводить свзанные позиции другого каталога или связанные новости и т.п.
Для этого испольузуется следующий код:
«ASC»), array(«IBLOCK_ID» => «3», ‘ID’ => $arResult[«SECTION»][«ID»]), true, Array(«UF_NOV»));
while ($arResult = $rsResult -> GetNext())
<
if (!empty($arResult[«UF_NOV»])) // условие, что пустые занчения не выводим
<
$iter = $arResult[«UF_NOV»]; //получили наши ID элементов из ИБ id 8, которые привязаны к разделу ИБ id 3
>
>
//Здесь мы начинаем выводить элементы другого инфоблока с ID 8, к которым привязан наш раздел свойством UF_NOV
$arFilter = array(‘IBLOCK_ID’ => 8,’ID’ => $iter);//задаем в фильтр чтобы выводил тольк из ИБ id 8 и только нужные нам элемены по ID, которые мы получили выше
$rsItems = CIBlockElement::GetList(array(),$arFilter);
while ($arItem = $rsItems->GetNext())
<
if (!empty($iter)) // условие, что пустые занчения не выводим
<
$resizer = $arItem[‘PREVIEW_PICTURE’]; //функция ресайза картинки, если нужно
$file = CFile::ResizeImageGet($resizer, array(‘width’=>1000, ‘height’=>290), BX_RESIZE_IMAGE_PROPORTIONAL , true); //функция ресайза картинки, если нужно
$img = $file[‘src’]; //функция ресайза картинки, если нужно
echo ‘
‘.$arItem[«NAME»].»;
>
>
?>
Источник
Как добавить и отобразить свойства у разделов в 1С-Битрикс
Если в вашем инфоблоке богатая структура, а именно — есть и элементы и разделы, то рано или поздно вам захочется вывести свойство, которое привязано к конкретному разделу. Сделать это можно несколькими способами, но мы рассмотрим только вывод через пользовательские свойства.
Как добавить и вывести дополнительные поля и свойства раздела в 1С-Битрикс
Чтобы это сделать, зайдите в админку, на нужном разделе нажмите «Изменить» или кликните по его ID (стоит отметить, если вы кликните по имени раздела, вы перейдете в сам раздел).
Отлично, мы в настройках раздела. На последней вкладке Доп. свойства мы и создадим наше пользовательское свойство, кликаем на Добавить пользовательское свойство (если у вас ее нету, не забудьте сбросить ваши настройки формы — делается это тут же, кликните на синюю шестеренку и отмените настройки).
Теперь нам необходимо создать поле. Самым популярным типом является строка, меняем наш тип (по умолчанию Видео) на Строка. Самое важное задать понятный Код поля — ну, например, это может быть UF_TITLE или UF_SECTION_DESC — этот код нам в дальнейшем пригодится для вывода, поэтому желательно давать осмысленные названия.
Кстати говоря, приставку UF_ рекомендуется оставить, так как другим разработчикам будет более понятней что мы пытаемся вывести, да и вам самим тоже. В самом низу формы создания поля, после того как мы придумали ему имя и задали тип, мы пишем ему название на русском и английском (для админки).
1С-Битрикс как вывести пользовательские поля разделов
Поле мы создали, осталось понять как его вывести на сайте. Для начала заполните на каком-то разделе эти свойства (я создам 3 поля для мета свойств), после чего переходим на этот раздел на нашем сайте. Если нам необходимо выводить эти свойства динамически (ID раздела будет меняться в зависимости от того, на каком разделе мы сейчас находимся), то заходим в наш код компонента (новости это или каталог) и где-нибудь в начале кода или в самом конце пишем:
Тут мы задаем ID инфоблока «IBLOCK_ID» => 14, и подхватываем наш динамический ID раздела
«ID» => $arResult [‘ID’]. В массиве, который отвечает за выбор полей для отображения, мы выводим 3 наших только что созданных свойства типа строка «UF_TITLE», «UF_KEYWORDS», «UF_DESCRIPTION».
Кстати, если вы еще не читали про CIBlockSection::GetList, советую глянуть эту статью, возможно вы узнаете для себя много интересного 🙂
О том, как вывести остальные наши 2 свойства и просто работать с мета данными, вы можете прочитать в статье Как задавать мета свойства в 1С-Битрикс.
автор: Dmitriy
Занимаюсь веб-разработкой с 2011 года. Посмотреть некоторые из моих работ, а также узнать чуть больше обо мне, вы можете на forwww.ru.
— Создание сайтов на 1С-Битрикс любой сложности
— Вёрстка макетов Figma, Photoshop, Zeplin
— Поддержка проектов на Битриксе
— Разработка нового функционала для сайта
— Парсинг данных
— Выгрузка \ Загрузка файлов в формате XML, YML, XLS, XLSX, CSV, JSON
— Интеграция по API со сторонними сервисами
и многое другое
Источник
Вывод «Пользовательского поля» в разделе каталога
В шаблоне комплексного каталога в \bitrix\catalog.section\.default\template.php я вставил код
название, код, описание и свойства которые вказаны на странице как «Установить ключевые слова страницы из свойства:» выводит а мои не хочит.
Подскажите пожалуйста, как вывести свои пользовательские свойства?
Создал вот этот код, но он выводит поле только в случае если «Тип данных» — «Строка» и то не множественная, а как вывести остальные: «Список», «Привязка к разделам инф. блоков» и др.
Цитата |
---|
Alexandr пишет: Создал вот этот код, но он выводит поле только в случае если «Тип данных» — «Строка» и то не множественная, а как вывести остальные: «Список», «Привязка к разделам инф. блоков» и др. |
Вот мой код который выводит ИД списка пользовательских полей
Техподержка прислала мне следующий код
сделал так, но не работает
Цитата |
---|
«SECTION_USER_FIELDS» => array(‘UF_*’), |
Одна из причин почему не выводятся пользовательские свойства разделов — не указан ID инфоблока
То есть, фильтр:
Array(«ID» => $arResult[‘ORIGINAL_PARAMETERS’][‘SECTION_ID’], «ACTIVE» => «Y»)
не выведет ничего нужного
Но если указать:
Array(«ID» => $arResult[‘ORIGINAL_PARAMETERS’][‘SECTION_ID’], «ACTIVE» => «Y», «IBLOCK_ID» => 2),
то всё ок. саму цифру 2 — лучше заменить на значение из $arParams или $arResult[‘IBLOCK_ID’]
После этого свойства UF_ появляются в массиве
Источник
Битрикс как вывести пользовательское свойство раздела
Цитатник веб-разработчиков В тексте курса вы встретите цитаты, высказанные в разное время разработчиками системы и разработчиками проектов на базе Bitrix Framework. Надеемся, что такие неформальные замечания внесут некоторое разнообразие в процесс изучения. Заодно опытные специалисты поделятся и своим опытом.
Имена авторов цитат даются в том написании, в каком авторы зарегистрировали себя на сайте «1С-Битрикс». .
Евгений Смолин: Сам кувыркался с непонятками (пока курсы учебные не прочитал и руками не попробовал то, что там написано). Битрикс из тех систем, где изучение «методом тыка» не очень эффективно без предварительного изучения учебных курсов. Уважаемые новички, потратьте немного своего драгоценного времени, пройдите пару-тройку учебных курсов и масса вопросов просто испарится — там есть ответы на множество вопросов.
Курс для разработчиков — продолжение линейки учебных курсов по Bitrix Framework. Получение сертификата по курсу рекомендуется после успешной сдачи тестов по всей линейке курсов, так как без понятия о работе Контент-менеджера и Администратора создание успешных сайтов будет затруднено.
Чтобы научиться программировать в Bitrix Framework, нет необходимости изучать всю линейку курсов. Но есть моменты, которые необходимо знать разработчикам о системе, они раскрыты в начальных курсах:
- Интерфейс программы — в главе Элементы управления курса Контент-менеджер.
- Компоненты 2.0 (начальные сведения) в главе Компоненты 2.0 (начальные сведения) курса Контент-менеджер.
- Информационные блоки — в главе Информационные блоки (начальные сведения) курса Контент-менеджер.
- Управление доступом к файлам, элементам контента, модулям и другие права доступа в главе Управление доступом курса Администратор. Базовый.
- Работа с инструментами системы — в главе Работа с инструментами курса Администратор. Базовый.
- Модуль Поиск — в главе Поиск курса Администратор. Базовый.
- Вся информация по администрированию модулей размещена в курсах:
- Администрирование. Модули — модули «1С-Битрикс: Управление сайтом»
- Администратор. Бизнес — модули «1С-Битрикс: Управление сайтом», связанные с коммерческой деятельностью в Интернете.
- Администратор «1С-Битрикс: Корпоративный портал» — модули «1С-Битрикс: Корпоративный портал»
Как построен курс
Общепринятая градация квалификации разработчиков в рамках курса обозначает что:
- Junior сможет создавать простые сайты работая со штатными компонентами и модифицируя их шаблоны.
- Middle разработчик может работать с API Bitrix Framework.
- Senior умеет работать над производительностью и безопасностью сайтов, создавать свои модули и компоненты.
Начальные требования к подготовке
Для успешного изучения курса и овладения мастерством разработки сайтов на Bitrix Framework необходимо владеть (хотя бы на начальном уровне):
- основами PHP, баз данных;
- основами HTML, CSS.
У нас часто спрашивают, сколько нужно заплатить
Курс полностью бесплатен. Изучение курса, прохождение итоговых тестов и получение сертификатов — ничего из этого оплачивать не нужно.
Ещё у нас есть Академия 1С-Битрикс, где можно обучиться на платной основе на курсах нашей компании либо наших партнёров.
Баллы опыта
В конце каждого урока есть кнопка . При клике на неё в Вашу итоговую таблицу опыта добавляется то количество баллов, которое указано в прочитанном После нажатия кнопки Прочитано! появится
окно подтверждения:уроке.
Периодически мы заново оцениваем сложность уроков, увеличивая/уменьшая число баллов, поэтому итоговое количество набранных Вами баллов может отличаться от максимально возможного. Не переживайте! Отличный результат — это если общее число набранных Вами баллов отличается от максимального на 1-2%.
Тесты
После изучения курса вам будет предложено пройти тесты на сертификацию. При успешной сдаче последовательности тестов на странице Моё обучение можно просмотреть результат обучения и загрузить сертификат в формате PDF.
Комментарии к статьям
На каждой странице курса авторизованный на сайте посетитель может дать комментарий к содержимому страницы. Комментарий — не форум, там не ведётся обсуждений или разъяснений. Это инструмент для сообщений нам об ошибках, неточностях. Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:
Что дальше?
Одновременно с изучением курса Разработчик Bitrix Framework вам придётся обращаться к информации о других технологиях Bitrix Framework. Эта информация размещена в следующих курсах:
- Технология Композитный сайт — ускорение работы сайта.
- Разработка и эксплуатация высоконагруженных проектов — для тех кто делает «тяжёлые» проекты.
- Бизнес-процессы — настройка и создание бизнес-процессов.
- Бот платформа Битрикс24 — приложения, основанных на чатах в веб-мессенджере.
- Маркетплейс Битрикс24 — приложения для коробочной и облачной версий Битрикс24.
- Маркетплейс Bitrix Framework — расширение функционала проектов на основе Bitrix Framework с помощью сторонних модулей и решений.
- Многосайтовость — система многосайтовости и принципы работы с многосайтовой конфигурацией.
Для преподавания оффлайн
Если данный курс берётся в качестве основы для оффлайного преподавания, то рекомендуемая продолжительность: 5 дней (40 академических часов).
Если нет интернета
Скачать материалы курса в формате EPUB. Файлы формата EPUB Чем открыть файл на
Android:
EPUB Reader
CoolReader
FBReader
Moon+ Reader
eBoox
iPhone:
FBReader
CoolReader
iBook
Bookmate
Windows:
Calibre
FBReader
Icecream Ebook Reader
Плагины для браузеров:
EpuBReader – для Firefox
Readium – для Google Chrome
iOS
Marvin for iOS
ShortBook
обновляются периодически, поэтому возможно некоторое отставание их от онлайновой версии курса.
Источник