Измените валюту WooCommerce при заказе по электронной почте, используя фильтр или хук - PullRequest
0 голосов
/ 11 октября 2019

У меня есть веб-сайт WordPress Woo Commerce, я использую доллар США в качестве основной валюты для всех продуктов, но на интерфейсном веб-сайте валюта и цена продукта конвертируются автоматически в зависимости от местоположения пользователя в GEO с последним курсом обмена.

Например, если я добавил товар по цене 1,00 долл. США, если покупатель из Нигерии, он покажет ему цену в 362,00 нг. Аналогично, если покупатель из Великобритании, он увидит цену 0,80 ..

* 1004. * Когда пользователь платит сумму любым способом, он преобразует цену обратно в доллары США только на странице заказа. Это хорошо. Все отлично работает.

Но при получении заказа пишите на админку. Он показывает символ валюты как NGN или £ в зависимости от местоположения клиента, но показывает цену в долларах США.

Например:

Это также должно быть $ 1,00 по электронной почте. но он показывает £ 1,00 по электронной почте.

Я хочу, чтобы он показывал $ 1,00 при заказе по электронной почте или £ 0,80 ..

Вот мой код: мой код работает идеально вездена вебсайте. Но не по заказу или спасибо, вы заказываете электронные письма администратору / клиенту.

add_filter('woocommerce_currency_symbol', 'cipher_change_currency_symbol');
function cipher_change_currency_symbol()
{
    if (!is_checkout()) {
        $data = cipherDetection();
        return $data['currency_symbol'];
    } else {
        return '$';
    }

}

Аналогично для изменения цены.

add_filter('woocommerce_get_price', 'cart_price', 10, 2);
add_filter('woocommerce_get_regular_price', 'cart_price', 10, 2);
add_filter('woocommerce_get_sale_price', 'cart_price', 10, 2);
function cart_price($price, $product)
{
    if (!is_checkout()) {
        $data = cipherDetection();

        $dataPRICE = (float)$data['price'];

        $cipherPRICE = ($dataPRICE * $price);

        $cipherPRICE = bcdiv($cipherPRICE, 1, 2);
        return $cipherPRICE;
    } else {
        return $price;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...