Задача: собрать полные данные об элементах инфоблока, применяя ORM/D7, который пришел на смену устаревшему CIBlockElement::GetList.
Получение полной информации об элементах инфоблока с использованием ORM
|
Михаил Базаров: 01.11.2024 02:00:00
Получение полной информации об элементах инфоблока с использованием ORM
Задача: собрать полные данные об элементах инфоблока, применяя ORM/D7, который пришел на смену устаревшему CIBlockElement::GetList. |
|
Михаил Базаров: 01.11.2024 02:00:00
Пример использования в видеоуроке https://bazarow.ru/video/video_new/seazon_2_2024/component-users-bulletins/ |
|
Алексей: 01.11.2024 04:00:00
Метод Iblock::wakeUp естественно не документирован в Битрикс (((
|
|
Михаил Базаров: 01.11.2024 05:00:00
Скудно, но все таки в примерах встречается, в новой документации
|
|
Кирилл: 10.03.2025 09:00:00
Описанный подход имеет два недостатка:
1) если свойство элемента - множественное, то в результирующем массиве данный элемент повторяется столько раз, сколько значений есть у этого свойства. Как этого избежать, не написано. 2) в результирующий массив попадает множество ненужных значений у каждого свойства. Например, для свойства типа "привязка к элементам" получаем значения _ID, _TIMESTAMP_X, _MODIFIED_BY, _DATE_CREATE, _CREATED_BY, _IBLOCK_ID, _IBLOCK_SECTION_ID и все остальные стандартные поля элемента. Если нужно получить только значение свойства типа "привязка к элементам", то в массиве SELECT метода GETLIST нужно указать не ATT_RELATED.ELEMENT, а ATT_RELATED.ELEMENT.NAME. Об этом также не написано. |
|
Михаил Базаров: 21.03.2025 10:00:00
Да, со множественными свойствами все сложенее (как и обычно).
Дописал в заметку как быть с ними. По второму моменту, тут да, нужно работать с тем что есть - больших проблем не должно вызывать |
Блог-note Заметки по 1С-Битрикс
-
Получить все товары из всех заказов пользователя. История купленных товаров.
Задача: нужно создать раздел, в персональном разделе пользователя, с историей всех купленных товаров. Не путать с историей заказов, нужен именно списо...
-
Получить все поля раздела, включая пользовательские, в section.php
Если нужно получить какие-то данные о текущем разделе, которых нет в изначальном массиве, можно воспользоваться методом CIBlockFindTools::GetSectionID...
-
Если товар в корзине, поменять значение input на "В корзине"
Если Вам нужно поменять текст на кнопке, добавляющей товар в корзину, достаточно воспользоваться методом API "CSaleBasket::GetList - который возвращае...
-
Дополнительные параметры в меню Битрикс
Иногда нужно присвоить какой-то функционал к конкретному пункту меню в битрикс. Например открывать ссылку в новом окне или открывать всплывающее окно...
-
Запретить изменения описаний товаров при выгрузке из 1С УТ на сайт
При разработке сайтов на Битрикс, с интеграцией с 1С Управление Тороговлей, нужно запретить изменения полей при обмене. В частности, детальное описани...
-
Заменить popap "Товар добавлен в корзину" на собственное окно
Задача: заменить модальное окно, которое появляется при добавлении товара в корзину — "Товар добавлен в корзину". Сделать его удобнее для по...