Magento Coding Solutions

associative product Id by super_attribute in magento


Example:
          $productId=40/* Configrabel Product Id*/
         $option= array(140=>20,141=>16,142=>30); /*super_attribute Id In array*/

$productId=$_REQUEST['product'];
$option=$_REQUEST['super_attribute'];
$product=Mage::getModel('catalog/product')->load($productId);
$optionvalue=$option;
if($product->getTypeId() == "configurable"):
$conf = Mage::getModel('catalog/product_type_configurable')->setProduct($product);
$simple_collection = $conf->getUsedProductCollection()->addAttributeToSelect('*')->addFilterByRequiredOptions();
foreach($simple_collection as $simple_product){
$Select_materials=$simple_product->getSelect_materials();
$Color_printed=$simple_product->getColor_printed();
$Number_of_side=$simple_product->getNumber_of_side();
$Select_size=$simple_product->getSelect_size();
$Hole=$simple_product->getHole();
if (in_array($Select_materials, $optionvalue)) {
  if (in_array($Color_printed, $optionvalue)) {
if (in_array($Number_of_side, $optionvalue)) {
  if (in_array($Select_size, $optionvalue)) {
if (in_array($Hole, $optionvalue)) {
$simpleproductId=$simple_product->getId();
$assPro=Mage::getModel('catalog/product')->load($simpleproductId);
return $simpleproductId.','.$assPro->getWidth().','.$assPro->getHeight();
break;
}
}
  }
}
 }
}
endif;