मेरे पास दो स्टोर दृश्यों के साथ एक सेटअप है।
पहले स्टोर के दृश्य में आधार है और केवल एक ही मुद्रा USD में सेट है। दूसरे में 2 अनुमत मुद्राएँ हैं - USD और EUR। EUR डिफ़ॉल्ट रूप से प्रदर्शित होता है, USD को आधार के रूप में सेट किया जाता है।
सभी उत्पादों की कीमतें केवल USD में निर्धारित हैं और EUR के लिए विनिमय दर 0.75 है। उत्पाद का मूल्य $ 14 है।
और मेरा कोड चला जाता है:
// Store ID 2 - default currency EUR, base currency USD
// $product is instance of Magento\Catalog\Model\Product
$priceInfo = $product->getPriceInfo();
$price = $priceInfo->getPrice('regular_price')->getValue();
यह कोड हमेशा EUR में सही मूल्य (10.50) प्राप्त करता है। लेकिन मुझे दोनों कीमतों की आवश्यकता है - USD में और EUR में, लेकिन मुझे कोई तरीका नहीं मिला कि किसी भी getPriceतरीके से मुद्रा को कैसे पास किया जाए ।
मैंने Magento\Directory\Helper\Dataबदलने की कोशिश की :
$helper->currencyConvert($price, 'EUR', 'USD');
लेकिन यह मुझे $ 13.99 देता है जब USD में वास्तविक मूल्य $ 14 है - इसलिए गणना गलत है।
क्या आप जानते हैं कि दोनों स्टोर मुद्राओं के लिए मुझे उत्पाद की कीमतें कैसे मिल सकती हैं? आपका बहुत बहुत धन्यवाद!