Tengo una configuración con dos vistas de la tienda.
La primera vista de la tienda tiene base y la única moneda establecida en USD. El segundo tiene 2 monedas permitidas: USD y EUR. EUR es el valor predeterminado que se muestra, USD se establece como base.
Los precios de todos los productos se establecen solo en USD y el tipo de cambio para EUR se establece en 0,75. El precio del producto es, digamos, $ 14.
Y mi código 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();
Este código siempre obtiene el precio correcto (10,50) en EUR. Pero necesito ambos precios, en USD y en EUR, pero no encontré una manera de pasar la moneda a ningún getPrice
método.
Traté de usar Magento\Directory\Helper\Data
para convertir:
$helper->currencyConvert($price, 'EUR', 'USD');
Pero me da $ 13.99 cuando el precio real en USD es $ 14, por lo que el cálculo es incorrecto.
¿Sabes cómo puedo obtener los precios de los productos para las monedas de ambas tiendas? ¡Muchas gracias!