通过Woocommerce Rest Api创建包含自定义字段的产品

问题描述 投票:0回答:1

我正在通过Woocommerce Rest Api v2添加产品。但是我无法通过Api添加自定义字段。

请建议我这样做的最好方法。

json的回应:

$data = array(
   // 'product' => array(
        'id' => 8555,
        'title' => 'Notebook',
        'type' => 'simple',
        'product_id' => 8555,
        'regular_price' => '21.99',
        'description' => 'Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.',
        'short_description' => 'Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.',
        'categories' => array("General"),
        'product_meta' => array(
            'custom_products_key' => 'custom_product_value',

            )
);

product_meta不工作......

php wordpress woocommerce custom-fields woocommerce-rest-api
1个回答
3
投票

您通常应该用'product_meta'替换'meta_data'并将键与值分开。

例如,这将为您的产品添加2个自定义字段:

    'meta_data' => [
        [
            'key' => 'custom_key'
            'value' => 'custom_value'
        ]
        [
            'key' => 'custom_key2'
            'value' => 'custom_value2'
        ]
    ]

要使用最新的Woocommerce Rest API v2(使用PHP)创建产品,请在以下设置好的类别ID:

$data = [
    'name' => 'Notebook',
    'type' => 'simple',
    'regular_price' => '21.99',
    'description' => 'Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.',
    'short_description' => 'Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.',
    'categories' => [
        [
            'id' => 9
        ]
    ],
    'meta_data' => [
        [
            'key' => 'custom_key'
            'value' => 'custom_value'
        ]
        [
            'key' => 'custom_key2'
            'value' => 'custom_value2'
        ]
    ]
];

print_r($woocommerce->post('products', $data));

这应该工作。

© www.soinside.com 2019 - 2024. All rights reserved.