@Denis9999

Как по id товара в битрикс получить все данные о товаре?

С битрикс работал только 1 день. Нужно получить список всех товаров и данные о них. В методе GetList можно указать поля, которые нужно вернуть но дело в том что там не все что нужно. Например, можно получить только одно изображение товара, а как получить все? По id товара это как-то можно сделать?

- еще момент, поля PREVIEW_TEXT и DETAIL_TEXT у всех товаров пустые, разве не в них должно находиться описание товара?

if (CModule::IncludeModule("iblock")):

	$iblock_id = 14;
	$my_elements = CIBlockElement::GetList (
		Array("ID" => "ASC"),
		Array("IBLOCK_ID" => $iblock_id),
		false,
		false,
		Array('ID', 'NAME', 'DETAIL_PAGE_URL', 'PREVIEW_PICTURE', 'DETAIL_PICTURE', 'CODE', 'EXTERNAL_ID', 'XML_ID', 'IBLOCK_SECTION' )
	);



	while($ar_fields = $my_elements->GetNext())
	{
		$img_path = CFile::GetPath($ar_fields["DETAIL_PICTURE"]);
		$code = $ar_fields["CODE"];
		$external_id = $ar_fields["EXTERNAL_ID"];
		$xml_id = $ar_fields["XML_ID"];
		$iblock_section = $ar_fields["IBLOCK_SECTION"];
		$active = $ar_fields["ACTIVE"];

		$preview_text = $ar_fields["PREVIEW_TEXT"];
		$detail_text = $ar_fields["DETAIL_TEXT"];

		echo '<br>aaa999 <br> name: <a href="'.$ar_fields["DETAIL_PAGE_URL"].'">'.$ar_fields["NAME"].'</a><br> img: <a href="https://www.tmanshlag.ru' . $img_path.'" >url</a> <br>';
		echo 'code: '. $code . '<br>';
		echo 'external_id: '. $external_id . '<br>';
		echo 'xml_id: '. $xml_id . '<br>';
		echo 'iblock_section: <br>';
		print_r($iblock_section);
		// echo '<br>';
		echo 'active: '. $active . '<br>';
		echo 'preview_text: '. $preview_text . '<br>';
		echo 'detail_text: '. $detail_text . '<br>';
	}
endif;
  • Вопрос задан
  • 2917 просмотров
Решения вопроса 1
Tomio
@Tomio
backend developer (python, php)
$my_elements = CIBlockElement::GetList (
  Array("ID" => "ASC"),
  Array("IBLOCK_ID" => $iblock_id),
  false,
  false,
  Array( )
);

while($obElement = $my_elements->GetNextElement()) {
    // это массив полей товара
    $fields = $obElement->GetFields();
    // это массив свойств товара
    $properties = $obElement->GetProperties();
}


Если искомых данных в двух этих массивах нет, тогда нужно досконально изучать проект и искать места, где они могут быть (а могут быть они где угодно =) )
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
babarun
@babarun Куратор тега 1С-Битрикс
Безумный план моих идей в руках больных людей
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы