У мене налаштування з двома переглядами магазину.
Перший вигляд магазину має базову і єдину валюту, встановлену на USD. У другій є 2 дозволені валюти - USD та EUR. EUR за замовчуванням відображається, USD є базовим.
Ціни на всі товари встановлюються лише в доларах США, а курс євро встановлюється на 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();
Цей код завжди отримує правильну ціну (10,50) в євро. Але мені потрібні обидві ціни - в доларах США та в євро, але я не знайшов способу передати валюту будь-яким getPrice
методом.
Я намагався використовувати Magento\Directory\Helper\Data
для перетворення:
$helper->currencyConvert($price, 'EUR', 'USD');
Але це дає мені 13,99 дол. США, коли реальна ціна в доларах становить 14 доларів США - значить, розрахунок невірний.
Чи знаєте ви, як я можу отримати ціни на продукти для обох валют магазину? Дуже дякую!