Ho una configurazione con due punti vendita.
La prima vista dello store ha base e l'unica valuta impostata su USD. Il secondo ha 2 valute consentite - USD e EUR. L'EUR è quello predefinito visualizzato, l'USD è impostato come base.
Tutti i prezzi dei prodotti sono fissati solo in USD e il tasso di cambio per EUR è fissato a 0,75. Il prezzo del prodotto è diciamo $ 14.
E il mio codice dice:
// 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();
Questo codice ottiene sempre il prezzo corretto (10,50) in EUR. Ma ho bisogno di entrambi i prezzi - in USD e in EUR, ma non ho trovato il modo di passare la valuta a nessun getPrice
metodo.
Ho provato a usare Magento\Directory\Helper\Data
per convertire:
$helper->currencyConvert($price, 'EUR', 'USD');
Ma mi dà $ 13,99 quando il prezzo reale in USD è $ 14 - quindi il calcolo è sbagliato.
Sai come posso ottenere i prezzi dei prodotti per entrambe le valute del negozio? Molte grazie!