2011-07-22 14 views
2

私は今この問題に苦しんでいるし、実際にやる必要があります。私はMagentoの使い勝手が問題を修正できるように思っていますが、まだ何も見つけられていません。Magentoチャイルド・プロダクト・バリエーション

基本的に、構成可能な製品の子製品の属性値を取得する必要があります。これまでのところ、私にできることすべてview.phtmlファイルである....

if ($_product->getTypeId() == 'configurable') 
{ 
    $confAttributes = $_product->getTypeInstance(true)->getConfigurableAttributesAsArray($_product); 
    print_r($confAttributes); 
} 

しかし、それは、物事の親スコープからです。基本的に私の問題は...私はこのようなループを通過するとき、私は子供の製品の画像を取得する必要がありますが、ということです

if ($_product->getTypeId() == 'configurable') 
    $_child_products = $_configurable_model->getUsedProducts(null, $_product); 
for ($i = 0; $i < count ($_child_products); $i++){ 
    <?php echo $this->helper('catalog/image')->init($_child_products[$i], 'image'); ?> 
} 

しかし、今、それは子製品の観点から、スコープです。私は何らかの形で、子プロダクトを(Jqueryとイメージ操作で使用するための)属性値と関連付ける必要があります。

私はchild_productの観点から属性にリンクできる情報を得る方法はありますか?

ありがとうございます!

+0

正確に必要なものを手に入れたかどうかはわかりません。 2番目のコードが間違っていますか? –

+0

2番目のスニペットは、子製品の画像のみを取得します。彼らがどのようなバリエーションを持っているかを知るためには、そのイメージのための道が必要です。最初のスニペットは、私にさまざまなバリエーションを提供していますが、画像のURLをバリエーションにリンクすることはできません。 –

+0

$ _child_products [$ i]をマゼンタモデルとして読み込もうとしましたか?またはコレクション? – Nasaralla

答えて

2

ご質問が私の理解であれば、このコードが役に立ちます。

 $product = Mage::getModel('catalog/product')->load($id); 

    $childIds = Mage::getModel('catalog/product_type_grouped') 
    ->getChildrenIds($product->getId()); 

    $i = 1; 

    foreach ($childIds as $key => $val){ 

     foreach($vals as $keyy => $vall){ 
      $arr[$i] = $vall; 
      $i++; 
     } 

    } 

$ id - >は、グループ製品の製品IDです。

子製品のIDを含む$ arr - >配列です。

 $collection = Mage::getModel('catalog/product') 
    ->getCollection() 
    ->addAttributeToSelect('name') 
    ->addAttributeToSelect('price') 
    ->addFieldToFilter('entity_id',array('in' =>array($arr))); 

上記のコードスニペットは、子商品を取得する方法を示しています。

関連する問題