Andrey_Tech
@Andrey_Tech

Как получить id всех товаров на 1c bitrix?

День добрый!
Как получить id всех товаров на сайте
мне нужно на сайте в артикулах проставить, за месть имеющегося артикула, id, но мне надо вытащить id всех позиций, как это можно реализовать?
  • Вопрос задан
  • 1988 просмотров
Решения вопроса 1
@makedev
https://dev.1c-bitrix.ru/api_help/iblock/classes/c...
Возвращает элементы инфоблоков по фильтру
https://dev.1c-bitrix.ru/api_help/catalog/classes/...
Возвращает элементы товарного каталога (модуль catalog)

Вариант использования под конкретно вашу задачу:
CModule::IncludeModule('iblock');
$iIblockID = 1; //тут вставить ИД инфоблока
/*Получаем все ИД товара*/
$resIblock = CIBlockElement::GetList(
   array('ID' => 'ASC'), 
   array(
   'IBLOCK_ID' => iIblockID  
   ),
   false, 
   false,
   array("ID")
);

while($arID = $resIblock->Fetch())
    CIBlockElement::SetPropertyValuesEx($arID['ID'], iIblockID , array('ARTICLE' => $arID['ID'])); //присваиваем коду свойству ARTICLE ИД элемента. вместо ARTICLE поставьте свой код свойства

Вот так можно заменить артикул на ИД в битриксе. Но обращу внимание на то, что способ ресурсозатратный. Каждое изменение свойства "ARTICLE" - новый запрос! Если элементов много и сервер обрывает, то либо пилить пошаговую загрузку, либо напрямую к базе запросы пилить.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 23:00
5000 руб./за проект
19 апр. 2024, в 20:43
20000 руб./за проект