使用 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 并自动为产品分配重力形式!
查看 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 并自动为产品分配重力形式!