簡體   English   中英

導入具有 magento 屬性的產品

[英]Import product with attributes magento

我使用導入腳本將簡單且可配置的產品從 xml 導入到 magento。

問題是,進口的簡單產品是 i magento,但它們沒有分配屬性值。

通過 APIv2 導入運行良好,但速度很慢,這就是為什么我需要在模型上執行此操作。

我的問題是:這(下面的代碼)正確嗎? 也許你有更好的、不同的方法來為產品分配屬性值:-)

$product->setData('rozmiar',$Products['sizeId']);
$product->setData('kolor',$Products['colorId']);

我的代碼:

$productCheck = Mage::getModel('catalog/product')->loadByAttribute('sku', $products['sku']);
            if ($productCheck) {
                $productCheck->delete();
                //print_r('true !');
            }

            $color = attributeValueExists1('kolor',$Products['color']);
            $size = attributeValueExists1('rozmiar',$Products['size']);

            $product = Mage::getModel('catalog/product');
            $product->setCreatedAt(strtotime('now'));
            $product->setTypeId($products['type']);
            $product->setTaxClassId(0); 
            $product->setWebsiteIds(array(1));  
            $product->setAttributeSetId($products['attrset']); 
            $product->setSku($products['sku']);
            $product->setName($products['name']);
            $product->setDescription($products['description']);
            $product->setInDepth('');    
            $product->setPrice($products['price']);
            $product->setShortDescription($products['description']);
            $product->setWeight(0);
            $product->setStatus(1); 
            $product->setVisibility(1); 
            //$product->setMetaDescription($products['name']);
            //$product->setMetaTitle($products['name']);
            //$product->setMetaKeywords($products['name']);
            $product->setCategoryIds($products['categories']);
            $product->setKolor($color);                        
            $product->setRozmiar($size);                       
            //$product->setData('rozmiar',$Products['size']);
            //$product->setData('kolor',$Products['color']);
            $product->setStockData(array(
                   'use_config_manage_stock' => 0, 
                   'manage_stock'=>1, 
                   'min_sale_qty'=>1, 
                   //'max_sale_qty'=>2, 
                   'is_in_stock' => 1, 
                   'qty' => $products['qty']
                   )
            );

            $product->save();

使用 Soap APIv2 導入產品

$result = $this->client2->catalogProductCreate($this->session, $type, /*$attributeSet['set_id']*/ '4', $kod, array(
        'categories' => $kategorie,  // array !!!!
        'websites' => array(1),
        'name' => $nazwa,
        'description' => $opis,
        'short_description' => $opis,
        'weight' => '1',
        'status' => '1',
        'url_key' => $nazwa,
        'url_path' => $nazwa,
        'visibility' => '1',
        'price' => $cena,
        'tax_class_id' => 1,
        'meta_title' => '',
        'meta_keyword' => '',
        'meta_description' => '',
        'stock_data' => array(  'manage_stock' => '1',              
                                'manage_stockSpecified' => False, 
                                'is_in_stock' => '1', 
                                'is_in_StockSpecified' => False, 
                                'qty' => $ilosc     
                            ),
        'additional_attributes' => $additionalattr
    ));     
    return $result;

additional_attributes 與 $product->setData('rozmiar',$Products['sizeID']) 不同嗎? ? 如果不一樣,我如何在通過目錄/產品模型導入產品時添加 additional_attributes?

首先,您需要為產品分配相應的屬性。 然后您可以使用導入腳本將這些屬性值保存到產品中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM