利用可能なすべての製品、その価格、およびその他の属性のテキストリストを出力することを目的としたスクリプト (モジュールではなく、Magento の外部) を開発しています。ただし、カタログ価格ルールは商品価格には適用されないようです。次のいずれかを使用する場合:
$_product->getPrice()
$_product->getFinalPrice()
通常の価格を取得します (ルールは適用されません)。
私が使用する場合:
$_product->getSpecialPrice()
製品自体に特別価格が実際に挿入されていない限り (つまり、特別価格がカタログ ルールに関連していない場合)、無効になります。
私も試しました
Mage::getModel('catalogrule/rule')->calcProductPriceRule($product,$product->getPrice())
Fabian Blechschmidt の回答で示唆されているように、興味深いことに、製品がカタログ ルールの影響を受けている場合にのみ通常の価格を返し、それ以外の場合はnullを返します。
少し前にStackOverflowとMagento Forumsで同様の質問がありましたが、提供された回答 (以下のコードを挿入すること) はうまくいきません (返される価格は同じままです)。
Mage::app()->loadAreaPart(Mage_Core_Model_App_Area::AREA_FRONTEND,Mage_Core_Model_App_Area::PART_EVENTS);
これを達成する方法を知っている人はいますか?
Magento 1.6.2.0 を使用しています。前もって感謝します。