Tüm ürünleri Magento 1.7'den fiyatlarla ihraç etmem gerekiyor.
Basit ürünler için bu bir problem değildir, ancak yapılandırılabilir ürünler için bu problemim var: Verilen fiyat, ilgili basit ürün için belirlenen fiyattır! Bildiğiniz gibi, Magento bu fiyatı yok sayar ve yapılandırılabilir ürünün fiyatını ve ayrıca seçilen seçenekler için ayarlamaları kullanır.
Ana ürünün fiyatını alabilirim, ancak seçilen seçeneklere bağlı olarak farkı nasıl hesaplayabilirim?
Kodum şuna benzer:
foreach($products as $p)
{
$price = $p->getPrice();
// I save it somewhere
// check if the item is sold in second shop
if (in_array($otherShopId, $p->getStoreIds()))
{
$otherConfProd = Mage::getModel('catalog/product')->setStoreId($otherShopId)->load($p->getId());
$otherPrice = $b2cConfProd->getPrice();
// I save it somewhere
unset($otherPrice);
}
if ($p->getTypeId() == "configurable"):
$_associatedProducts = $p->getTypeInstance()->getUsedProducts();
if (count($_associatedProducts))
{
foreach($_associatedProducts as $prod)
{
$p->getPrice(); //WRONG PRICE!!
// I save it somewhere
$size $prod->getAttributeText('size');
// I save it somewhere
if (in_array($otherShopId, $prod->getStoreIds()))
{
$otherProd = Mage::getModel('catalog/product')->setStoreId($otherShopId)->load($prod->getId());
$otherPrice = $otherProd->getPrice(); //WRONG PRICE!!
// I save it somewhere
unset($otherPrice);
$otherProd->clearInstance();
unset($otherProd);
}
}
if(isset($otherConfProd)) {
$otherConfProd->clearInstance();
unset($otherConfProd);
}
}
unset($_associatedProducts);
endif;
}