2011-11-24 10 views
7

商品のいくつかはspecialPriceといくつかのカタログルールが設定されています。Magento:割引価格を取得

フロントエンドにすべての自分の製品の割引%を表示する必要があります。

割引価格を取得するために$ _product-> getSpecialPrice()を使用していましたが、カタログルールに基づいた価格の商品では失敗します。

ディスカウント価格は、カタログルールまたはspecialPriceから取得できますか?

+1

は> getFinalPrice($ _product-を試してみてください) –

答えて

10

このスニペットを試してください: これは価格ルールを計算します。

Mage::getModel('catalogrule/rule')->calcProductPriceRule($product,$product->getPrice()); 

これはあなたが探しているものですか?

+0

は、このデータをプルするがより高速な方法ですか?確かに、製品ページではこのような価格を引っ張っていないのですか? –

+1

現在、私は1つの方法があると思います。特に製品回収が行われる段階。このようなカスタム動作が必要な場合は、カスタムリソースモジュールを使用してカスタムモジュールを作成することをお勧めします。このカスタムモジュールでは、ルールテーブルに参加してルールを適用します。 –

12

はい、$_product->getFinalPrice()を使用できます。ここで

は3つの価格の差である:

$regularPrice = number_format($_product->getPrice(), 2);

$discountedPrice = number_format($_product->getFinalPrice(), 2);

$specialPrice = number_format($_product->getSpecialPrice(), 2);

+0

ありがとうございます! – asherrard

関連する問題