2012-03-13 14 views
7

में प्राप्त कर सकते हैं लागू मूल्य नियम के साथ अंतिम मूल्य, उदाहरण के लिएकैसे Magento

$_producte = Mage::getModel('catalog/product')->load(2974); 
echo $_producte->getFinalPrice(); 

मैं दृश्यपटल में प्राप्त कर सकते हैं जब डालने

.phtml लिए लेकिन मैं अंतिम कीमत (छूट के साथ) नहीं मिल सकता है में व्यवस्थापक अनुभाग या कस्टम उत्पाद निर्यात फ़ाइल में।

उत्तर

11

Magento में मूल्य गणना एक गर्म गड़बड़ है। नियम गणना को ट्रिगर करने के लिए आपको फ्रंटएंड ईवेंट क्षेत्र को लोड करने की आवश्यकता है (Mage_CatalogRule_Model_Observer::processFrontFinalPrice()Mage_CatalogRuleconfig.xml में कॉन्फ़िगर किया गया है)।

Mage::app()->loadAreaPart(Mage_Core_Model_App_Area::AREA_FRONTEND,Mage_Core_Model_App_Area::PART_EVENTS); 
+0

क्या:

अन्यथा यहां दिए गए समाधान की कोशिश? – Kamal

+0

इसके बारे में क्या? मुझे एक नया प्रश्न जैसा लगता है :-) - शायद यहां या अधिक http://magento.stackexchange.com – benmarks

+0

पर, यह सच है, लेकिन मुझे आश्चर्य हुआ कि क्यों प्रक्रिया गणना प्रक्रिया द्वारा ट्रिगर की गई है फ्रैंकफिनलप्रिस, क्या यह प्रक्रिया एडमिनफिनलप्रिस के साथ संभव नहीं हो सकता है? अलग प्रश्न में पूछ सकते हैं .. :) – Kamal

0

मुझे लगता है कि फ्रंटेंड इवेंट क्षेत्र भाग को लोड करना आवश्यक नहीं है। अक्सर उत्पाद सही ढंग से स्थापित नहीं किया जाता है।

प्रयास करें:

$product 
    ->setStoreId(1) //your store_id here 
    ->setCustomerGroupId(1) //your favorite customer group id here 
    ->load($productId) 

और उसके बाद:

$product->getFinalPrice() 

सही अंतिम मूल्य देना चाहिए। processAdminFinalPrice के बारे में https://stackoverflow.com/a/14096072/2787671