Добавление продукта в Magento через PHP API приводит к тому, что некоторые атрибуты не устанавливаются

Я пытаюсь написать скрипт для переноса некоторых продуктов из списка продуктов в базе данных MySQL в хранилище Magento 1.6.2. У меня есть следующий код:

$product = Mage::getModel('catalog/product');
$product->setTypeId('simple');
$product->setWebsiteId("2");
$product->setName($row['name']);
$product->setDescription('No Description');
$product->setShortDescription('No Description');
$product->setAttributeSetId(4); // need to look this up
$product->setSku($sku); 
if (isset($row['price'])) $product->setPrice($row['price']);
if (isset($row['msrp'])) $product->setMsrp($row['msrp']);
$product->setCategoryId($map_mysql_cat_to_mage_cat[$row['category_id']]);
$product->setWeight($weight);
$product->setManufacturer($row['manufacturer']);
$product->setTaxClassId(2); // taxable goods
$product->setVisibility(4); // catalog, search
$product->setStatus(1); // enabled

// assign product to the default website
echo "Adding Product...";
$product->save();
echo "Product Added." . PHP_EOL;

Это приводит к тому, что продукт успешно добавляется в каталог Magento, и имя, SKU, цена, MSRP и вес устанавливаются правильно.

Однако атрибут "Производитель", категория и веб-сайт остаются неустановленными / пустыми. $row['factory'] определенно является допустимой непустой строкой, а $map_mysql_cat_to_mage_cat[$row['category_id']] преобразуется в целое число, которое соответствует действительному идентификатору категории.

Где я иду не так, я рву свои волосы!

0 ответов

Другие вопросы по тегам