/** * set children */ public function setChildren() { parent::setChildren($this->getAdditionalInfo('children')); }
/** * */ public function setChildren() { $children = array(); if ($this->item->isConfigurable()) { $childProductIds = $this->item->getTypeInstance()->getUsedProductIds(); foreach ($childProductIds as $child) { $configChild = Mage::getModel('catalog/product')->setStoreId($this->_getConfig()->getStoreViewId())->load($child); if ($configChild->getStatus() != Mage_Catalog_Model_Product_Status::STATUS_DISABLED) { $childProducts[] = $configChild; } } } if ($this->item->isGrouped()) { $childProductIds = $this->item->getTypeInstance()->getAssociatedProductIds(); foreach ($childProductIds as $child) { $configChild = Mage::getModel('catalog/product')->setStoreId($this->_getConfig()->getStoreViewId())->load($child); if ($configChild->getStatus() != Mage_Catalog_Model_Product_Status::STATUS_DISABLED) { $childProducts[] = $configChild; } } } $oldVersion = $this->_getConfigHelper()->getIsMagentoVersionLower15(); if (!empty($childProducts)) { foreach ($childProducts as $childProduct) { /** @var Mage_Catalog_Model_Product $childProduct */ /** @var Shopgate_Framework_Model_Export_Product_Xml $child */ $child = Mage::getModel('shopgate/export_product_xml'); $child->setItem($childProduct); $child->setParentItem($this->item); $child->setData('uid', $this->item->getId() . '-' . $childProduct->getId()); $child->setIsChild(true); $child->setAttributes($this->item); $child->setFireMethodsForChildren(); $child->generateData(); $children[] = $child; if (!$oldVersion) { $childProduct->clearInstance(); } } } parent::setChildren($children); }