Установка характеристик с помощью API
Всем добрый вечер!
Как с помощью API установить для товара выбор характеристик (Размер и цвет), см. скриншот?
Пробовал методы shop.product.skus.add, shop.product.update, shop.product.skus.update:
'features_selectable[size]' => 'L',
'features_selectable[tsvet]' => 'Зеленый'
Но ничего не получается.
Буду признателен за помощь!
17 ответов
АПИ и характеристики - это боль
Уже поднимал вопрос. Ответ вэбасиста - пилите свое АПИ
Да, я уже понял, что придется допиливать API самому. Для проекта уже делаем свое, но просто странно, что на такие очень важные мелочи разработчик внимание не обращает.
Можно узнать, где такой ответ вы получили? И желательно точную цитату, а не переиначенную вашим восприятием.
Цитирую:
ну и ссылочка на тему
Во-первых, в той теме не нашёл ответа пилите своё API именно по этому вопросу, да и вообще пилите своё API.
Там идёт лишь констатация факта, что большинство разработчиков даже не пытается использовать API, а пишут свои плагины, в связи с чем реальных использований API довольно мало, а потому оно особо и не развивается, т.к. почти никто ничего не просит.
Во-вторых, мнение отдельного разработчика != "ответ Вебасиста".
Пардоньте.... читал между строк.
Вопрос АПИ поднимается далеко не первый раз, и этот пост единственный, в котором есть ответ Webasyst по сути.
Если я ошибаюсь - ну так дайте расширенный ответ, напишите, что собираетесь его пилить, или уже пилите! А то != и все....
Опровергать - это здорово. Констатировать факты - сложнее.
Дайте совет: Вот что делать? ждать, пока Вы выпустите обновленный АПИ? или все-таки "пилите, Шура, плите..."?
Исправлено на github: https://github.com/webasyst/shop-script/commit/d4a...
После этого можно создавать товары по характеристикам так:
Метод shop.product.add
size - код характеристики
12 и 16 - это НЕ сами значения, а ID значений (feature_value_id)
На сколько я понимаю - этот вариант не решает проблему топик стартера....
Ну если проблема будет чётко и понятно сформулирована, то может и её решим.
Я увидел проблему невозможности создать товары с генерацией артикулов по характеристика и эта проблема уже решена.
Вооот. Ну наконец то лучик света пролился на АПИ.
Значит еще не все потеряно и можно надеяться на полноценный АПИ.
Это первое сообщение, в котором я встречаю желание его допилить. Ранее - "ни кому не надо", "ни кто не пользуется" и т.д.
А вообще я попробовал выполнить метод shop.product.update передав туда:
И у меня обновились артикулы в соответствии с переданными характеристиками.
Всё работает.
Приветствую!
К сожалению, ссылка, приведенная выше, 404 возвращает (https://github.com/webasyst/shop-script/commit/d4a...).
А какого вида запрос к shop.product.update нужно делать, чтобы параметры установились (имею в виду features_selectable[tsvet]' => 'Зеленый' и т.п.)?
Ссылка доступна разработчикам, но в принципе она не нужна даже для update.
Я же написал данные для примера.
Передавать нужно не значения Зелёный, Красный, а ID этих значений.
С цветом все получилось, спасибо!
А как быть с размерами? У меня функция shop.feature.getList выдает для размеров следующие данные:
)
Как тогда для него установить? Пробовал так:
'features_selectable[razmer1]' => 'S'
или
'features_selectable[razmer1]' => '0'
или
'features_selectable[razmer1][]' => '0', но что-то пока не получается...
Нужно передавать ID значений! Посмотрите какие данные уходят в POST-е при сохранении товара в админке, там эти ID передаются.
Через API пока ID значений получить нельзя, это баг, исправим в ближайшем обновлении.
Не, я понял, что по id, просто думал, что сработает по аналогии с обычными features. Кстати, если будете дорабатывать api, то было бы удобно, чтобы можно было обходиться без id, как, к примеру, сейчас можно устанавливать свойства артикула (Вкладка "Дополнительно" -> "ХАРАКТЕРИСТИКИ АРТИКУЛА"): 'features[tsvet]'=>'Зеленый' и т.п.
А так в базе нашел id характеристик:

Теперь все работает. Пока обновление не вышло, придется самому дописать метод определения id. Но главное, что теперь можно полноценно создавать товары - а это главное. Еще раз спасибо за помощь!А вы спрашиваете почему никто не пользуется...
Решил посмотреть инфу по api, а ее нигде нет
на github - пусто, нужно где-то зарегистрироваться
https://developers.webasyst.ru/api/explorer/shop/ - тут
не понятно куда слать запросы, как авторизоваться