使用 REST API 在 woocommerce 产品创建中添加插件元数据

Add plugin metadata on woocommerce product creation using the REST API

查看 Woocommerce documentation,关于添加自定义元数据的内容很少。除了一些似乎与插件无关的关键值附加。

我有一个名为 "gravity forms" 的插件,它也有自己的扩展 REST Api,但是我不知道如何在创建产品时自动将特定的重力形式分配给产品。 (他们的其余部分 api 似乎主要处理表单管理,而不是将它们分配给产品)

当我提取具有指定重力形式的特定产品时,它具有以下自定义元数据:

"metadata": [...,{ {"id"=>24866, "key"=>"_gravity_form_data", "value"=> {"id"=>"6", "display_title"=>false, "display_description"=>false, "disable_woocommerce_price"=>"no", "price_before"=>"", "price_after"=>"", "disable_calculations"=>"no", "disable_label_subtotal"=>"no", "disable_label_options"=>"no", "disable_label_total"=>"no", "disable_anchor"=>"no", "label_subtotal"=>"Subtotal", "label_options"=>"Options", "label_total"=>"Total", "use_ajax"=>"no"}}]

然而,当我尝试自动将元数据分配给产品时,例如 metadata: [{_gravity_form_data: { id: 6...}}],它不会自动将重力形式分配给产品。

问题1)有哪些方式可以自动为产品分配重力形式?

问题2)如果可以在创建产品后完成,我如何获取产品ID并将重力形式分配给它?我是否必须使用 post 创建挂钩 - 我更愿意主要坚持使用 REST。

安装了 WC API Custom Metadata Plugin,这意味着我可以使用新的重力形式提取以前修改过的产品,但这适用于任何元数据对象。然后我可以编辑我的 POST 请求:

meta_data: [ { key: "_gravity_form_data", value: { id: "6", display_title: false, display_description: false, disable_woocommerce_price: "no", price_before: "", price_after: "", disable_calculations: "no", disable_label_subtotal: "no", disable_label_options: "no", disable_label_total: "no", disable_anchor: "no", label_subtotal: "Subtotal", label_options: "Options", label_total: "Total", use_ajax: "no" } } ]

它会自动给它一个 ID 并自动为产品分配重力形式!