WooCommerce.NET 添加产品 category/subcategory
WooCommerce.NET add product with category/subcategory
我正在寻找一些 "inspiration",了解如何将产品添加到我的 WC 商店。
我可以添加一个简单的产品:
Product prod = new Product()
{
sku = SKU,
name = Name,
description = Description,
regular_price = Price,
manage_stock = true,
stock_quantity = quantity,
};
wc.Product.Add(prod).GetAwaiter().GetResult();
但是当我只有一个类别名称时,如何将此产品添加到类别中?
另一个问题是我有一个类别结构,其中许多子类别具有相同的名称。
示例:
main category: MALE sub categories: shoes, t-shirts, underwear,
accessories
main category: FEMALE sub categories: shoes, t-shirts, underwear,
accessories
main category: CHILDREN sub categories: shoes, t-shirts, underwear
我正在通过 CSV 导入产品数据库,我在其中命名了类别:
CATEGORY>SUBCATEGORY
所以呢?有什么想法吗?
谢谢!
编辑:
从 Matthias S. 的回答中,我得到了一些很好的见解。但我需要一个更通用的解决方案。
我只需要从类别名称中获取正确的类别 ID。
我在循环的方向上思考,我会:
1.循环:按名称查找顶级类别
-2。循环:按名称查找第一个子类别
--3.循环:按名称查找下一个子类别
---- ...
那可能吗?
谢谢!
类别不仅仅是 WC 的名称。您需要在商店内创建与输入端相同的类别树。因此,WC 类别具有唯一 ID、显示名称和父 ID。
对于您给出的示例,您可以通过 api
创建男性类别
ProductCategory newCategoryMale = new ProductCategory
{
name = "MALE"
};
ProductCategory maleCategory = await wooCommerce.Category.Add(newCategoryMale)
返回的类别将有一个 ID,您可以使用它来创建子类别。
ProductCategory newCategoryShoes = new ProductCategory
{
name = "shoes",
parent = maleCategory.id
};
ProductCategory shoes = await wooCommerce.Category.Add(newCategoryShoes)
现在您有了类别树结构以及相关的 ID,您可以直接使用分配的类别创建产品。
Product prod = new Product()
{
sku = SKU,
name = Name,
description = Description,
regular_price = Price,
manage_stock = true,
stock_quantity = quantity,
categories = new List<ProductCategoryLine>
{
new ProductCategoryLine
{
id = shoes.id
}
}
};
编辑:
要获取现有类别的 ID,您可以使用
List<ProductCategory> existingCategories = await wooCommerce.Category.GetAll();
获取您商店中已设置的所有类别。
当查找 Male->Shoes 时,您需要在该列表中搜索名为 "MALE" 的根级别类别,并找到名为 "shoes" 的类别,其中 parentId 等于您的男性类别 ID。
我正在寻找一些 "inspiration",了解如何将产品添加到我的 WC 商店。
我可以添加一个简单的产品:
Product prod = new Product()
{
sku = SKU,
name = Name,
description = Description,
regular_price = Price,
manage_stock = true,
stock_quantity = quantity,
};
wc.Product.Add(prod).GetAwaiter().GetResult();
但是当我只有一个类别名称时,如何将此产品添加到类别中?
另一个问题是我有一个类别结构,其中许多子类别具有相同的名称。
示例:
main category: MALE sub categories: shoes, t-shirts, underwear, accessories
main category: FEMALE sub categories: shoes, t-shirts, underwear, accessories
main category: CHILDREN sub categories: shoes, t-shirts, underwear
我正在通过 CSV 导入产品数据库,我在其中命名了类别:
CATEGORY>SUBCATEGORY
所以呢?有什么想法吗?
谢谢!
编辑: 从 Matthias S. 的回答中,我得到了一些很好的见解。但我需要一个更通用的解决方案。 我只需要从类别名称中获取正确的类别 ID。 我在循环的方向上思考,我会: 1.循环:按名称查找顶级类别 -2。循环:按名称查找第一个子类别 --3.循环:按名称查找下一个子类别 ---- ... 那可能吗?
谢谢!
类别不仅仅是 WC 的名称。您需要在商店内创建与输入端相同的类别树。因此,WC 类别具有唯一 ID、显示名称和父 ID。
对于您给出的示例,您可以通过 api
创建男性类别ProductCategory newCategoryMale = new ProductCategory
{
name = "MALE"
};
ProductCategory maleCategory = await wooCommerce.Category.Add(newCategoryMale)
返回的类别将有一个 ID,您可以使用它来创建子类别。
ProductCategory newCategoryShoes = new ProductCategory
{
name = "shoes",
parent = maleCategory.id
};
ProductCategory shoes = await wooCommerce.Category.Add(newCategoryShoes)
现在您有了类别树结构以及相关的 ID,您可以直接使用分配的类别创建产品。
Product prod = new Product()
{
sku = SKU,
name = Name,
description = Description,
regular_price = Price,
manage_stock = true,
stock_quantity = quantity,
categories = new List<ProductCategoryLine>
{
new ProductCategoryLine
{
id = shoes.id
}
}
};
编辑:
要获取现有类别的 ID,您可以使用
List<ProductCategory> existingCategories = await wooCommerce.Category.GetAll();
获取您商店中已设置的所有类别。 当查找 Male->Shoes 时,您需要在该列表中搜索名为 "MALE" 的根级别类别,并找到名为 "shoes" 的类别,其中 parentId 等于您的男性类别 ID。