В настоящее время я перемещаю данные из пользовательской CMS в WooCommerce. Я могу создать продукт, используя следующий код:
try {
$product = new WC_Product_Variable();
$product->set_name($productData["Name"]);
$product->set_description($productData["Description"]);
$product->set_price($productData["Price"]);
$product->set_sku("PW" . $productData["ID"]);
$product->set_category_ids($productData["NewCategoryIds"]);
$product->set_status($productData["OnlineStatus"]);
...
Проблема, с которой я столкнулся, заключается в том, что при повторном запуске сценария я получаю WC_Data_Exception: Invalid or duplicated SKU
.
Это странно, потому что, глядя на функцию сохранения в классе WC_Product_Variable
, комментарий говорит:
Сохранение данных (создание или обновление в зависимости от того, работаем ли мы над существующим продуктом).
... но функция сохранения в этом классе не выполняет никаких обновлений.