Добрый день!
Есть непонимание как записать свойство DETAIL_PICTURE у элемента.
Для начала, я вручную загрузил фото через админку сайта, навел на товар в каталоге, выбрал изменить и в окне редактирования перешел в закладку Подробно, там есть блок Детальная информация и в детальную картинку загрузил фото.
Далее через командную РНР-строку выполнил код
$ID = 208717;
$ar_res = CCatalogProduct::GetByIDEx($ID);
print_r($ar_res);
В результате вывел массив в котором указано
Array (
[ID] => 208717
[~ID] => 208717
...
[DETAIL_PICTURE] => 126701
[~DETAIL_PICTURE] => 126701
.....
)
Тут видно что в свойстве DETAIL_PICTURE установлено фото и указано ID этого фото.
Таким образом проверено, что вручную картинка загружается в это поле (свойство)
Теперь я пишу код который перебирает файлы в нужной папке и должен загрузить фото в DETAIL_PICTURE
Пробовал разными способами
И так пробовал
1 способ
$el = new CIBlockElement;
$arLoadProductArray = Array(
"DETAIL_PICTURE" => CFile::MakeFileArray($ImgEl)
);
$res = $el->Update($arEl["ID"], $arLoadProductArray);
И так пробовал
2 способ
$IMG_O[]["VALUE"] = CFile::MakeFileArray($ImgEl);
CIBlockElement::SetPropertyValuesEx($arEl["ID"], $BID, array("DETAIL_PICTURE" => $IMG_O));
И так
3 способ
$IMG_O[]["VALUE"] = CFile::MakeFileArray($ImgEl);
CIBlockElement::SetPropertyValueCode($arEl["ID"], "DETAIL_PICTURE", $IMG_O);
Ни один способ не записывает фото в свойство DETAIL_PICTURE (пробовал также в PREVIEW_PICTURE), зато в свойства MAIN_PHOTO, OTHER_PHOTO все записывается.
Подскажите, как это сделать?
Есть непонимание как записать свойство DETAIL_PICTURE у элемента.
Для начала, я вручную загрузил фото через админку сайта, навел на товар в каталоге, выбрал изменить и в окне редактирования перешел в закладку Подробно, там есть блок Детальная информация и в детальную картинку загрузил фото.
Далее через командную РНР-строку выполнил код
$ID = 208717;
$ar_res = CCatalogProduct::GetByIDEx($ID);
print_r($ar_res);
В результате вывел массив в котором указано
Array (
[ID] => 208717
[~ID] => 208717
...
[DETAIL_PICTURE] => 126701
[~DETAIL_PICTURE] => 126701
.....
)
Тут видно что в свойстве DETAIL_PICTURE установлено фото и указано ID этого фото.
Таким образом проверено, что вручную картинка загружается в это поле (свойство)
Теперь я пишу код который перебирает файлы в нужной папке и должен загрузить фото в DETAIL_PICTURE
Пробовал разными способами
И так пробовал
1 способ
$el = new CIBlockElement;
$arLoadProductArray = Array(
"DETAIL_PICTURE" => CFile::MakeFileArray($ImgEl)
);
$res = $el->Update($arEl["ID"], $arLoadProductArray);
И так пробовал
2 способ
$IMG_O[]["VALUE"] = CFile::MakeFileArray($ImgEl);
CIBlockElement::SetPropertyValuesEx($arEl["ID"], $BID, array("DETAIL_PICTURE" => $IMG_O));
И так
3 способ
$IMG_O[]["VALUE"] = CFile::MakeFileArray($ImgEl);
CIBlockElement::SetPropertyValueCode($arEl["ID"], "DETAIL_PICTURE", $IMG_O);
Ни один способ не записывает фото в свойство DETAIL_PICTURE (пробовал также в PREVIEW_PICTURE), зато в свойства MAIN_PHOTO, OTHER_PHOTO все записывается.
Подскажите, как это сделать?