2014-12-05 50 views
0

我正在以編程方式導入基於.csv文件的Magento中的簡單產品。一切工作正常,但我必須添加一些值,我創造了一些自定義屬性。但我不知道如何添加它們。Magento以編程方式導入產品添加自定義選項

我認爲,因爲我添加了自定義屬性所在的屬性集,所以我可以添加它們,如 $product->setCustomAttribute(value) 但這不起作用。

我該如何添加它們?

休息了參考代碼

if(($handle = fopen("werkbladvoorraad.csv", "r")) !== FALSE){ 
    while(($data = fgetcsv($handle, 1000, ";")) !== FALSE){ 
     $row++; 

     if($row == 1){ 
      continue; 
     } 

    try{ 
     $product ->setStoreId(1) 
       ->setWebsiteIds(array(1)) 
       ->setAttributeSetId(4) 
       ->setTypeId('simple') 
       //->setCreatedAt(strtotime('now')) 
       ->setSku($data[0]) 
       ->setName($data[1]) 
       //->setWeight() 
       ->setStatus(1) 
       ->setTaxClassId(2) 
       ->setVisibility(Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH) 
       ->setManufacturer($data[14]) 
       ->setColor($data[10]) 
       ->setPrice($data[6]) 
       ->setMaat_heren($data[4]) // CUSTOM ATTRIBUTE 
       ->setStockData(array(
         'use_config_manage_stock' => 0, 
         'manage_stock'=>1, 
         'min_sale_qty'=>1, 
         'max_sale_qty'=>2, 
         'is_in_stock' =>1, 
         'qty' => 999 
        )); 
     $product->save();  
    }catch(Exception $e){ 
     echo ($e->getMessage()); 
    } 
    } 
} 

注意
有沒有錯誤消息顯示

回答

0

我知道這是愚蠢的,但你可以嘗試清理緩存,然後保存自定義有問題的屬性。如果還是不行,請嘗試強制儲蓄與:

$product->setMyCustomAttr('My Custom Attr'); 
$product->getResource()->saveAttribute($product, 'my_custom_attr'); 

只要確保你已經保存的產品,並與它的ID再次加載它。爲了做到這一點,你會用

Mage::getModel('catalog/product')->load(1); 

讓我知道這是否正常工作:)

相關問題