Как можно добавить дополнительные картинки для товаров через API?
Здесь я отвечал на этот вопрос
Если вы хотите заменять не основную картинку, а дополнительные, то вместо main_pair нужно использовать массив image_pairs.
Будьте осторожны!!!
Если я не ошибаюсь, то просто ДОБАВИТЬ изображение нельзя, можно только заменить.
То есть все изображения будут удалены и добавлены те, которые у вас в запросе
А pair_id он получает автоматически или мне нужно создать pair_id?
Создавать не нужно.
Это внутренняя информация и будет сгенерирована автоматически.
Вот код, отвечающий за обработку изображений, вдруг вам поможет.
app/Tygh/Api/Entities/Products.php
foreach ($params['image_pairs'] as $pair_id => $pair) {
if (!empty($pair['icon']['image_path'])) {
$_REQUEST['file_product_add_additional_image_icon'][] = $pair['icon']['image_path'];
$_REQUEST['type_product_add_additional_image_icon'][] = (strpos($pair['icon']['image_path'], '://') === false) ? 'server' : 'url';
}
if (!empty($pair['detailed']['image_path'])) {
$_REQUEST['file_product_add_additional_image_detailed'][] = $pair['detailed']['image_path'];
$_REQUEST['type_product_add_additional_image_detailed'][] = (strpos($pair['detailed']['image_path'], '://') === false) ? 'server' : 'url';
}
$_REQUEST['product_add_additional_image_data'][] = array(
'position' => !empty($pair['position']) ? $pair['position'] : 0,
'pair_id' => 0,
'type' => 'A',
'object_id' => 0,
'image_alt' => !empty($pair['icon']['alt']) ? $pair['icon']['alt'] : '',
'detailed_alt' => !empty($pair['detailed']['alt']) ? $pair['detailed']['alt'] : '',
);
}
1 лайк