我對可配置產品有類似的問題。我希望將分配給主要產品的圖像也添加到所有選項中。所以我創建了一個擴展並觀察了catalog_product_save_after事件。然後我在觀察者中添加了這種代碼:
$product = $observer->getEvent()->getProduct();
if ($product->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE)
{
$main_image = $product->getImage();
if($main_image != "no_selection")
{
$productTypeIns = $product->getTypeInstance(true);
$childIds = $productTypeIns->getChildrenIds($product->getId());
$importDir = Mage::getBaseDir('media') . DS . 'catalog/product';
foreach ($childIds as $childId)
{
foreach($childId as $_childId)
{
$childProduct = Mage::getModel('catalog/product')->load($_childId); //You get your child products here
if ($childProduct->getImage()=="no_selection")
{
$childProduct->addImageToMediaGallery($importDir.$main_image,array ('image','small_image','thumbnail'),false,false);
$childProduct->save();
}
}
}
}
}
謝謝。唯一的問題是我不擅長Magento,有什麼機會可以告訴我我可以把它放在哪裏,在哪個文件中? – denislexic 2012-07-09 17:39:14
您不需要將此代碼添加到任何現有文件。您需要創建自己的擴展並註冊一個觀察者。 – 2012-07-10 10:42:26
我該怎麼做。對不起,我真的很不好。 – denislexic 2012-07-20 12:25:46