- Как вывести пользовательские свойства заказов
- Введение в пользовательские CSS-свойства
- Что такое пользовательское свойство
- Особенности пользовательских свойств
- Пользовательские свойства и media-выражения
- Пользовательские свойства и функция calc
- Пользовательские свойства и SVG
- Поддержка браузерами
- Заключение
- Как добавить и отобразить свойства у разделов в 1С-Битрикс
- Как добавить и вывести дополнительные поля и свойства раздела в 1С-Битрикс
- 1С-Битрикс как вывести пользовательские поля разделов
- автор: Dmitriy
- Вывод «Пользовательского поля» в разделе каталога
- Как вывести свойства инфоблока по отдельности и немного плюшек не в тему
- Используются в видео уроке по разработке информационного портала
Как вывести пользовательские свойства заказов
Столкнулась с задачей вывести пользовательские свойства заказов (которые мы добавляем сами в Магазин/Настройки/Свойства заказов)
Вот здесь описано как вытащить эти свойства http://dev.1c-bitrix.ru/community/forums/forum6/topic33400/ Однако, хоть у меня и тоже есть пользовательское поле LOCATION, этот метод не работает.
Пишу следующим образом:
Если выводить вообще весь массив $db_sales, то получаются следующие строки:
Array
(
[ID] => 36
[ORDER_ID] => 6
[ORDER_PROPS_ID] => 1
[NAME] => Ф.И.О.
[VALUE] => Иванов Иван
[CODE] => FIO
)
Array
(
[ID] => 37
[ORDER_ID] => 6
[ORDER_PROPS_ID] => 2
[NAME] => E-Mail
[VALUE] => 123@123.ru
[CODE] => EMAIL
)
Array
(
[ID] => 38
[ORDER_ID] => 6
[ORDER_PROPS_ID] => 3
[NAME] => Телефон
[VALUE] => 1234567890
[CODE] => PHONE
)
Array
(
[ID] => 39
[ORDER_ID] => 6
[ORDER_PROPS_ID] => 4
[NAME] => Индекс
[VALUE] => 111111
[CODE] => ZIP
)
Array
(
[ID] => 40
[ORDER_ID] => 6
[ORDER_PROPS_ID] => 6
[NAME] => Местоположение
[VALUE] => 821
[CODE] => LOCATION
)
Array
(
[ID] => 41
[ORDER_ID] => 6
[ORDER_PROPS_ID] => 7
[NAME] => Адрес доставки
[VALUE] => Москва
[CODE] => ADDRESS
)
Array
(
[ID] => 48
[ORDER_ID] => 6
[ORDER_PROPS_ID] => 5
[NAME] => Город
[VALUE] => Москва
[CODE] => CITY
)
Как видно, тут есть элементы с кодом LOCATION, однако, они не выводятся почему-то.
И еще вопрос: а как можно программно изменить значения пользовательских свойств?
Источник
Введение в пользовательские CSS-свойства
Автор курса Нетологии «HTML-верстка» Стас Мельников рассказал, что такое пользовательские CSS-свойства и почему их стоит изучить.
Стандарт CSS Custom Properties изменил CSS. Появились безумные возможности, о которых раньше мы могли только мечтать. Рассказываем, какие именно и почему новичкам стоит изучить их как можно быстрее.
Что такое пользовательское свойство
Пользовательское свойство — это CSS-свойство, которое создал сам разработчик. Браузер ничего не знает о таком свойстве, пока его не объявили.
Объявление пользовательского свойства начинается с двойного дефиса, после которого указывают название, ставят двоеточие и добавляют значение.
Для примера объявим пользовательское свойство —netologyBrandColor со значением purple для элемента button :
Теперь браузер знает о нашем свойстве, но в чем его польза?
Особенности пользовательских свойств
Первая фишка — функция var . С помощью этой функции мы можем сказать браузеру, чтобы он взял значение из объявленного пользовательского свойства и добавил его для встроенного свойства.
Чтобы браузер так сделал, разработчику нужно объявить встроенное свойство, например, color , и добавить к нему в качестве значения функцию var , в аргументе которой передать название пользовательского свойства.
Для примера добавим пользовательское свойство для встроенных свойств border и color :
В браузере кнопка будет выглядеть так:
Зачем изучать пользовательские свойства, если есть переменные в Sass и они полностью устраивают?
Переменные в препроцессорах, таких как LESS и Sass, помогают организовать код, чтобы нам было проще поддерживать его. Например, в следующем коде я использую переменную $netologyBrandColor , в которой хранится основной цвет бренда:
После преобразования кода в браузере мы увидим следующий код:
Исходя из примера, понятно, что после преобразования кода из Sass в CSS на место переменных компилятор вставил их значения, поэтому мы можем сказать, что Sass-переменных нет в браузере.
Вторая фишка пользовательских свойств — они живут в браузере, поэтому мы можем изменять их прямо в нем. Например, изменим значение пользовательского свойства —netologyBrandColor при наведении мыши на кнопку.
Теперь, если у кнопки сработает состояние hover , значения у свойств border и color изменятся. Именно из-за этой особенности пользовательские свойства и называют «живыми»: они могут изменяться прямо в браузере, и соответственно менять значения встроенных свойств, к которым они применяются.
В качестве еще одного примера изменю значение пользовательского свойства при состоянии focus .
Способность динамического изменения пользовательских свойства можно сочетать с Sass-переменными или LESS-переменными.
Пользовательские свойства и media-выражения
Еще одна возможность пользовательских свойств — их значения можно переключать с помощью медиазапросов.
Для примера создадим два пользовательских свойства: —mq и —textColor . При помощи первого выведем название медиафункции на страницу, а второе нужно для переключения цвета. На экранах с шириной до 768px текст будет пурпурным, а от 769px — красным.
Пользовательские свойства и функция calc
В CSS есть функция calc , с помощью которой можно выполнять арифметические операции. Она также может работать и с пользовательскими свойствами. Например, мы можем контролировать количество дочерних элементов в ряду:
Если добавить значение 5 для пользовательского свойства —childCount в браузере, увидим следующую картину:
Для разнообразия изменю 5 на 7 и элементы перестроятся.
Пользовательские свойства и SVG
Еще одна возможность пользовательских свойств — с их помощью можно задать значение для таких SVG-свойств, как fill , stroke , stroke-width и других. Это можно сделать двумя способами.
В первом способе будем использовать атрибуты fill , stroke и stroke-width , к которым в качестве значения определим пользовательские свойства.
И добавим в CSS значения для пользовательских свойств:
Слева иконка без стилизации, а справа с нашими настройками. Вот так просто мы можем настраивать графику.
Второй способ — убрать атрибуты их и заменить на CSS-свойства.
Я специально добавил для свойств fill , stroke и stroke-width другие значение, чтобы визуально была заметна разница между примерами.
Поддержка браузерами
Согласно caniuse.com, пользовательские свойства работают в большинстве современных браузеров, кроме IE11.
Если на вашем проекте много пользователей с IE11, не применяйте пользовательские свойства. Я мог бы рассказать, как сделать фоллбэки, но опираясь на свой опыт, считаю, что лучше просто их не использовать.
Если же вам не нужно поддерживать IE11, смело используйте все возможности пользовательских свойств.
Заключение
Надеюсь, мне удалось заинтересовать вас пользовательскими свойствами. В этой статье я коснулся только возможностей и опустил техническую и практическую часть, но наверстаю это и напишу еще несколько статей о принципах работы и кейсах.
Источник
Как добавить и отобразить свойства у разделов в 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:news.detail вписать
Свойство список в виде select
Множественное свойство типа список:
Вывести список связанных элементов со свойством привязка к элементам в виде списка
Вывести свойство файл-изображение как изображение а не ссылку на загрузку:
Изображение торгового предложения
Свойство типа файл с ссылкой на загрузку файла
Вывести множественное свойство типа файл, со всей информацией о файле: размер, название, транслитированное название, тип файла- в отдельной заметке.
Вывести колличество комментариев к элементу в списке новостей битрикс:
Вывести и отресайзить детальную картинку товара знаная ID товара (или элемента)
Немного не в тему но может пригодиться: вывести колличество просмотров элемента инфоблока (с новостями точно работает):
Немного костыльный, но однако способ: как вывести ссылку на детальный просмотр и изображение связанного элемента каталога. Для примера, имеем инфоблок с товарами и инфоблок с брендами. Нужно на странице бренда вывести все связанные элементы с ссылкой на детальный просмотр и картинку товара.
Свойство привязка к Google карте
Вывести любое множественное свойство:
Используются в видео уроке по разработке информационного портала
Вывести теги с отправкой на страницу поиска
Вывести дату создания элемента в правильном формате «22 января 2015»
Вывести количество просмотров элемента инфоблока. Если просмотров нет, вывести 0
Вывести количество комментариев к элементу инфоблока. Если просмотров нет, вывести 0
Источник