Я пытаюсь создавать продукты программно в Magento 2, все работает, за исключением некоторых из них, которые я получаю:
There has been an error processing your request
URL key for specified store already exists.
Это мой код:
$sku = $row[0];
$name = $row[1];
$getSku = $product->getIdBySku($sku);
if($getSku) {
echo 'Product with SKU '.$sku.' already exists';
} else {
$product->setSku($sku); // Set your sku here
$product->setName($name); // Name of Product
$product->setAttributeSetId(4); // Attribute set id
$product->setStatus(1); // Status on product enabled/ disabled 1/0
$product->setWeight(10); // weight of product
$product->setStoreId(1);
$product->setVisibility(4); // visibilty of product (catalog / search / catalog, search / Not visible individually)
$product->setTaxClassId(0); // Tax class id
$product->setTypeId('simple'); // type of product (simple/virtual/downloadable/configurable)
$product->setPrice(100); // price of product
$product->setStockData(
array(
'use_config_manage_stock' => 0,
'manage_stock' => 1,
'is_in_stock' => 1,
'qty' => 999999999
)
);
$product->save();
$this->messageManager->addSuccess('Product with SKU '.$sku.' Added');
}
Sku и название продукта пришли из CSV, который уже сделан ... так что не беспокойтесь об этом, я пытаюсь решить эту проблему, похоже, что он пытается создать URL-адрес продукта с тем же именем ?, возможно, есть 2 продукта с одним и тем же именем, можно magento сгенерировать пользовательский URL, например, name-1 name-2, вместо того, чтобы использовать один и тот же, я думаю, в этом проблема ...