3

カスタム属性の値を構成可能な製品の関連製品に設定したいと考えています。

  1. 属性と属性セットを作成しました
  2. 構成可能な製品を作成するとき、後でそれぞれの値を選択するために必要な属性セットを選択します。

    $product = Mage::getModel('catalog/product');
    $stockData = $product->getStockData();
    $stockData['qty'] = $qty;
    $stockData['is_in_stock'] = 1;
    $stockData['manage_stock'] = 1;
    $stockData['use_config_manage_stock'] = 1;
    $today = "'".date("Y-m-d")."'";
    $product->setStoreId(0)
        ->setTypeId("configurable")  
        ->setAttributeSetId($attribute_set_id)
        ->setName($es_name)
        ->setDescription($es_description)
        ->setShortDescription($es_short_description)
        ->setSku($sku)
        ->setWeight(1.0)
        ->setStatus(2)  
        ->setVisibility(4) 
        ->setPrice($price)
        ->setTaxClassId($tax_class)  // Impuestos
        ->setStockData($stockData)   // Stock
        ->setCategoryIds($categories) 
        ->setWebsiteIDs(array(1))  // Website total
        ->setData('news_from_date', $today)
            ->save();
    
  3. 属性セットから選択した属性と同じ数の関連製品を作成する必要があります。例: オプション 40、41、42 を指定した custom_attribute。したがって、custom_attribute と value を使用して単純な製品を作成する必要がありますが、その方法がわかりません。例: 私の custom_attribute 40 と値 42 を持つ別の構成可能なものと同じ単純な製品を作成します。1 つ以上の属性を同じ属性セットに関連付けることができ、すべてを動的に作成する必要があることを知っています。

$product->setAttribute("custom_attribute",$value) のようなものはありますか?

4

1 に答える 1

0

はい、あなたはすでにそれを使用しています。Magento は魔法の方法を使用します - 属性 custom_attribute の値を $value に設定するには、次のようにします。

$product->setCustomAttribute($value)

some_other_thing の値を $value に設定するには、次のようにします。

$product->setSomeOtherThing($value)

パターンを見ていますか?

または、setData メソッドを直接使用できます。

$product->setData('custom_attribute', $value)
于 2013-03-27T17:15:09.113 に答える