Каким образом можно получить ID товара в Битриксе, используя свойство?

Как я могу изменить код, чтобы выводился товар с определенным свойством, а не последний в списке?
  • 22 мая 2024 г. 8:50
Ответы на вопрос 2
1. Для получения ID товара в Битриксе используя свойство, можно использовать следующий код:

```php
$arFilter = array(
    'IBLOCK_ID' => $iblockId, // ID информационного блока
    'PROPERTY_' . $propertyName => $propertyValue // свойство товара
);

$res = CIBlockElement::GetList(array(), $arFilter, false, false, array('ID'));
if ($ob = $res->GetNext()) {
    $productId = $ob['ID']; // ID товара
}
```

2. Чтобы вывести товар с определенным свойством, а не последний в списке, можно использовать тот же код, но добавить сортировку по желаемому свойству:

```php
$arFilter = array(
    'IBLOCK_ID' => $iblockId, // ID информационного блока
    'PROPERTY_' . $propertyName => $propertyValue // свойство товара
);

$arSort = array(
    $propertyName => 'ASC' // сортировка по свойству
);

$res = CIBlockElement::GetList($arSort, $arFilter, false, false, array('ID'));
if ($ob = $res->GetNext()) {
    $productId = $ob['ID']; // ID товара
}
``` 

Таким образом, код будет выводить товар с определенным свойством, отсортированным по этому свойству в порядке возрастания (ASC).
Отвечаю сам. 
В $propertyCode должно быть ID свойства .
Похожие вопросы