Magento 1.7의 가격으로 모든 제품을 내 보내야합니다.
간단한 제품의 경우 문제가 없지만 구성 가능한 제품의 경우이 문제가 있습니다. 내 보낸 가격은 관련 단순 제품의 가격입니다! 아시다시피 Magento는이 가격을 무시하고 구성 가능한 제품의 가격과 선택한 옵션에 대한 조정을 사용합니다.
상위 상품의 가격을 얻을 수 있지만 선택한 옵션에 따라 차이를 어떻게 계산합니까?
내 코드는 다음과 같습니다
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;
}