Magento 2: Tạo sản phẩm có thể định cấu hình bằng API REST


10

Để tạo sản phẩm có thể định cấu hình, tôi cần tạo sản phẩm có thể định cấu hình, sản phẩm ảo và cuối cùng kết nối chúng.

Ví dụ về yêu cầu json nhận được từ đây: Làm cách nào để tạo một sản phẩm có thể định cấu hình bằng API REST v2?

Tôi tự hỏi tại sao tôi cần phần này dưới đây trong sản phẩm cấu hình?

        "configurable_product_options":[
         {
           "attribute__id":"193",
           "label":"Colour",
           "position":0,
           "values":[
             {
               "value_index":340
             },
             {
               "value_index":341
             }
           ],

Tôi nhận thấy rằng phần này là bắt buộc để có thể kết nối sản phẩm ảo với kết nối có thể định cấu hình sau này. Nhưng giá trị không có ý nghĩa.

Trong sản phẩm ảo tôi có thể gán bất kỳ giá trị nào tôi muốn. Mục đích của các giá trị này là gì?

Câu trả lời:


0

Hãy thử với mã dưới đây, tôi hy vọng nó làm việc cho bạn.

đã tạo ra một sản phẩm đơn giản với thuộc tính 'màu' và id sản phẩm đơn giản là 1011,1012 & 1013.

<?php
/********* Create Configurable Product By Rest API *********/
try {
    $url = "http://siteurl.com";
    $apiusername = 'apiusername';
    $apipassword = 'apipassword';
    $userData = array("username" => $apiusername, "password" => $apipassword);


    $ch = curl_init($url."/rest/V1/integration/admin/token");
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($userData));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json", "Content-Lenght: " . strlen(json_encode($userData))));

    $token = curl_exec($ch);
    $product_data= '{
                    "product": {
                                "id": 0,
                                "sku": "config_1",
                                "name": "Config Product",
                                "attributeSetId": 4,
                                "price": 20,
                                "status": 1,
                                "visibility": 4,
                                "typeId": "configurable",
                                "createdAt": "string",
                                "updatedAt": "string",
                                "weight": 0.8,
                                "extensionAttributes": {
                                    "stockItem": {
                                        "isInStock": true
                                        },
                                    "configurableProductLinks": [1011,1012,1013],
                                    "configurableProductOptions": [
                                        {
                                            "id": 0,
                                            "attributeId": "93",
                                            "label": "Color",
                                            "position": 0,
                                            "isUseDefault": true,
                                                "values": [
                                                    {
                                                        "valueIndex": 11
                                                    },
                                                    {
                                                        "valueIndex": 12
                                                    },
                                                    {
                                                        "valueIndex": 13
                                                    }
                                                        ]
                                        }
                                                                ]   
                                   }
                            }
    }';

     $ch = curl_init($url."/rest/V1/products");
     curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
     curl_setopt($ch, CURLOPT_POSTFIELDS,$product_data);
     curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json", "Authorization: Bearer " . json_decode($token)));

     $result = curl_exec($ch);
     }catch(Exception $e){

           echo $e->getMessage();

     }
      var_dump($result);
?>  
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.