WooCommerce API с использованием NodeJS добавляет неполные варианты продукта - PullRequest
1 голос
/ 05 марта 2019

При добавлении вариантов к существующим продуктам с использованием API класс доставки и выбранный вариант, по-видимому, игнорируются. Я использую NodeJS, с woocommerce-api v1.4.2

Используя NodeJS и вышеприведенный пакет, попытайтесь добавить вариант к существующему продукту, используя следующую полезную нагрузку:

{ sku: '12751_1551793442001',
  regular_price: '198',
  attributes:
   [ { id: 1551793442001,
       name: 'mount',
       shipping_class: 'band-l',
       option: 'Framed' } ] }
{ sku: '12751_1551793442002',
  regular_price: '119',
  attributes:
   [ { id: 1551793442002,
       name: 'mount',
       shipping_class: 'band-i',
       option: 'mounted' } ] }
{ sku: '12751_1551793442003',
  regular_price: '109',
  attributes:
   [ { id: 1551793442003,
       name: 'mount',
       shipping_class: 'band-d',
       option: 'Print only' } ] }

Добавлены варианты, каждая с правильной ценой, но без связанного с ней «имени». Variations added

Диапазон доставки не задан, даже если он задан в запросе API, однако цена установлена. Variations added

Почтовая марка уже существует в WooCommerce Variations added

Я немного растерялся, чтобы объяснить это, у кого-нибудь есть понимание?

1 Ответ

0 голосов
/ 07 марта 2019

После общения с разработчиками WooCommerce кажется, что есть два разных типа атрибутов, локальные и глобальные.Глобальные атрибуты имеют идентификатор, а локальные - нет.Чтобы решить мою проблему, я пропустил идентификатор и включил имя:

Кроме того, класс shipping_class был не в том месте.

{ 
  sku: '12751_1551793442001',
  regular_price: '198',
  shipping_class: 'band-l',
  attributes: [
    {
      name: 'mount',
      option: 'Framed' 
    } 
  ]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...