Magento2 REST Обновление пользовательских атрибутов

10

Как я могу обновить пользовательские атрибуты, такие как описание? Следующий код корректно обновляет цену и название продукта, но не настраивает атрибуты (без изменений). Новый продукт создан правильно с пользовательскими атрибутами, проблема при обновлении.

magento2 REST Обновление пользовательских атрибутов

magento2 REST Обновление пользовательских атрибутов

user47734
источник
Привет, ребята, в вашем случае, я думаю, вам нужно сделать еще раз: обновление php bin /
magento
Привет, ребята, я думаю, что вы даете нам код или конфигурацию атрибута для custom_attributes. Чтобы мы проверили снова.
MrTo-Kane
Вы проверяли любой ответ? нужны ваши комментарии.
Чираг

Ответы:

9

Для создания продукта мы можем использовать:

  • POST : / V1 / продукты

Для обновления:

  • PUT : / V1 / products / {sku}

В вашем случае ваш код должен быть:

$productData = [
        'attribute_set_id'  => 4,
        "type_id": "simple",
        "sku": "test-SKU",
        "name": "Test",
        "price": 100,
        "status": 1,
        'custom_attributes' => [
                ['attribute_code' => 'description', 'value' => 'Test Description' ],
                ['attribute_code' => 'short_description', 'value' => 'Test Short Description' ],
            ]
    ];

Тело JSON:

 {
  "product": {
    "sku": "test-SKU",
    "name": "Test",
    "attribute_set_id": 4,
    "price": 100,
    "status": 1,
    "custom_attributes": [
      {
        "attribute_code": "description",
        "value": "Test Description"
      },
      {
        "attribute_code": "short_description",
        "value": "Test Short Description"
      }
    ]
  }
}

Здесь есть ответ: https://magento.stackexchange.com/a/135607/33057

Хоа ТруонгДинь
источник
Привет, @Khoa, тебе нужно отформатировать массив в строку json, потому что он использовал REST и инструмент REST.
MrTo-Kane
@ MagentoOdoo.com Спасибо! Я обновил свой ответ.
Khoa TruongDinh
@Khoa TruongDinh Как добавить метку выбранных атрибутов в API остальных продуктов. Как ['attribute_code' => 'description', 'value' => 'Test Description', 'label' => 'Description'],
Кирти Нария
@KhoaTruongDinh Как передать метку в / V1 / products / {sku} 'attribute_code' => 'color', 'value' => '54', 'label' => 'Blue' Дайте мне знать, если у вас есть идея. Ваша помощь будет оценена.
Кирти Нария
2

Попробуйте передать ваши пользовательские атрибуты в массиве, например:

'custom_attributes' => array(
     '0' => array(
          'attribute_code' => 'my_custom_attribute_code',
          'value' => 'my_custom_attribute_value'
      )
      ...
)
чираг
источник
Как передать метку в / V1 / products / {sku} 'attribute_code' => 'color', 'value' => '54', 'label' => 'Blue' Дайте мне знать, если у вас есть идея. Ваша помощь будет оценена.
Кирти Нария