Получите название штата вместо кода в Woocommerce

Я добавил пользовательский список состояний в свою woocommerce, используя код здесь: https://docs.woocommerce.com/document/addmodify-states/

Вновь добавленные состояния прекрасно загружаются на экранах внешнего интерфейса и некоторых внутренних интерфейсов, однако на экранах электронной почты и учетной записи пользователя woocommerce загружает только код / ​​значение вместо действительного имени. (XX1, XX2 и т. Д.)

Я полагаю, что могу исправить это с помощью этой логики:

echo WC()->countries->states[$current_user->billing_country][$current_user->billing_state]; //to get State name by state code

Поэтому мне было интересно, можно ли использовать эту логику для создания функции, которая будет печатать имя состояния всякий раз, когда шаблон вызывает код? Любая помощь будет очень высоко ценится.

0

Решение

Вы можете использовать следующее от текущего пользователя (WP_User объект) чтобы получить название государственной этикетки:

$user = wp_get_current_user(); // The current user

$country = $user->billing_country;
$state = $user->billing_state;
echo WC()->countries->get_states( $country )[$state];

Проверено и работает


А для заказа из ID заказа:

$order = wc_get_order($order_id); // The WC_Order object

$country = $order->get_billing_country();
$state = $order->get_billing_state();
echo WC()->countries->get_states( $country )[$state];
2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector