php - 在 WooCommerce 中以编程方式添加多个产品
问题描述
我正在尝试以编程方式在 WooCommerce 中批量添加产品,但由于某种原因,它只添加了第一个产品。我正在向一个应用程序发出请求,该应用程序返回带有产品名称和描述的 JSON 响应。到目前为止,我的代码如下所示:
$curl_connection = curl_init($url);
curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
$data = json_decode(curl_exec($curl_connection), true);
curl_close($curl_connection);
foreach($data['data'] as $media){
$objProduct = new WC_Product();
$objProduct->set_name($media['name']);
$objProduct->set_status("publish");
$objProduct->set_catalog_visibility('visible');
$objProduct->set_description($media['description']);
$objProduct->set_sku("product-sku");
$objProduct->set_price(10.55);
$objProduct->set_regular_price(10.55);
$objProduct->set_manage_stock(true);
$objProduct->set_stock_quantity(10);
$objProduct->set_stock_status('instock');
$objProduct->set_backorders('no');
$objProduct->set_reviews_allowed(true);
$objProduct->set_sold_individually(false);
$objProduct->set_category_ids(array(1,2,3));
$product_id = $objProduct->save();
}
解决方案
我知道了!您不能创建具有重复 SKU 的产品。
$objProduct->set_sku("product-sku");
上面的代码需要对所有产品都有一个唯一的字符串。
推荐阅读
- java - 导入 javafx 无法在 Visual Studio Code 中解析
- r - 用范围内的随机数替换数据帧中的 NA
- c++ - 为什么 C 和 C++ 允许表达式 (int) + 4*5?
- python - 无法为具有形状“(?,4)”的张量“Placeholder_1:0”提供形状(0,)的值
- postgresql - 如何使用 2 个不同的聚合进行此查询
- angular - 如何在 Angular 中正确使用 datePipe
- sql - 此应用程序中的自然联接还是外部联接?
- php - php只打印一行
- java - 如何将包含多个 JSON 对象的字符串转换为 Java 中的实际 JSON 对象
- flutter - 应用程序在调试模式下工作,但不在发布模式下