Я пытаюсь переключить валюту с помощью функции WooCommerce Multilingual Multi-Currency , но во время оформления заказа, когда вы меняете страну выставления счета.
Я использую действие woocommerce_checkout_update_order_review
, чтобы узнать, когда страна была изменена, а затем
$wcml_mc = new WCML_Multi_Currency();
$wcml_mc->set_client_currency($currency);
, чтобы установить валюту на основе этого. Символ валюты действительно обновляется в запросе Ajax после этого, но для обновления самой цены требуется еще один запрос update_checkout
в ajax. Вы можете вызвать это, например, включив / отключив отдельный адрес доставки или выбрав другую страну.
Их документация предлагает также фильтр wcml_client_currency
, который, если я жестко закодирую валюту там, он будет работать . Однако я не совсем знаю, как установить это из моего действия с переменной, когда действие woocommerce_checkout_update_order_review
часто вызывается через долгое время после первого числа применений фильтра wcml_client_currency
.
Is есть лучший способ сделать это? Я подумал о том, чтобы попытаться выполнить еще один запрос ajax и сравнить значения, и, если он неверен, запустить еще одно обновление проверки, но это кажется хакерским. Было бы здорово, если бы это можно было исправить в первом обновлении.
Спасибо за любую помощь !!