0

我有两个价格(每月价格和价格)的可配置产品。由于产品的价格是固定的,只有每月的价格可以随选项变化,我添加了一个存储价格的属性(device_price),价格属性将具有每月的价格。

当然,当我将产品添加到购物车时,我需要收取价格,而不是每月的价格。所以我使用了一个带有以下代码的 checkout_cart_product_add_after 观察者:

public function updatePrice(Varien_Event_Observer $observer){

    $item = $observer->getQuoteItem();
    if ($item->getParentItem()) {$item = $item->getParentItem();}

    if ($item->getProduct()->isConfigurable()){
        $device_price = Mage::getModel('catalog/product')->load($item->getProduct()->getId())->getPrice_device();
        //set information
        $item->setCustomPrice($device_price);
        $item->setOriginalCustomPrice($device_price);
        $item->getProduct()->setIsSuperMode(true);
    }
 }

但是现在我想在购物车上显示两个价格,当我在观察者上更新它时,最终价格会自动出现,但是我如何获得每个月的价格?(产品价格加上所选联营公司的价格)。

我想在我覆盖它之前,每月价格在报价项目的某个地方(我实际上是覆盖它还是只是说 magento 来查看自定义而不是原始价格?)。

我的想法是获取每月价格并将其存储在 quoteItem 的某个位置,以便我可以轻松地在购物车上访问它。

如何在观察者上获得可配置产品的最终价格?

如果考虑到有更好的方法来解决它,我愿意接受其他建议。

编辑解决方案

最后我找到了它在哪里。我现在感觉很糟糕,因为实际上很容易得到它:(我一直试图从项目中获取价值,但它实际上是在项目内部的产品上

$_item->getProduct()->getFinalPrice();

这将为您提供所选选项的可配置产品的最终价格。

也许这可以帮助其他人不浪费我所做的时间。

4

1 回答 1

0

您将从请求中获得的选项价格。

Mage::app()->getFrontController()->getRequest()
于 2012-11-02T19:48:02.777 回答