Вы близки!
Конечная точка update
может обновлять несколько продуктов одновременно, но не может изменять свойства позиции.
Вы ищете change
конечная точка, которая может более детально изменять одну строку.
$.ajax({
url: "/cart/change.js",
type: "POST",
data: '{"id":"1234567890", "quantity": 1, "properties":{ "Someprop": "Somevalue" } }',
contentType: "application/json",
dataType: 'json'
}
});
ПРИМЕЧАНИЕ. Данные должны содержать либо «строку» (основанный на 1 индекс позиции элемента в массиве cart.items), либо «id»(это может быть значение id
или key
элемента). Я рекомендую обновлять, используя item.key
для поля идентификатора, при использовании конечных точек / change и / update: id
- это просто идентификатор варианта, и при использовании свойств элемента строки один и тот же идентификатор может повторяться для нескольких строк. ,key
гарантированно будет уникальным.
Кроме того, при достижении конечной точки / cart / change, если вы не укажете параметр количества, Shopify может по умолчанию задать количество строки равным 1. Для безопасности я бы сказал,рекомендуем всегда явно передавать текущее количество строки.