В админе при нажатии Add Order я не могу понять как убрать биллинг & поля страны доставки. Я не хочу использовать CSS, чтобы просто скрыть поля, потому что мне нужна скрытая страна при просмотре заказа во внешнем интерфейсе (form-pay.php).
Я попытался следующий нормальный способ удалить эти поля из проверки, но это не имеет никакого эффекта здесь.
function custom_checkout_fields( $fields ) {
unset($fields['billing']['billing_country']);
return $fields;
}
add_filter('woocommerce_checkout_fields' , 'custom_checkout_fields');
Чтобы удалить поля страны доставки и оплаты на странице добавления администратора, вы будете использовать следующее:
// Admin billing fields
add_filter( 'woocommerce_admin_billing_fields', 'custom_admin_billing_fields', 10, 1 );
function custom_admin_billing_fields( $billing_fields ) {
global $pagenow;
if( $pagenow === 'post-new.php' && isset($_GET['post_type']) && $_GET['post_type'] === 'shop_order' ){
unset($billing_fields['country']); // remove billing country field
}
return $billing_fields;
}
// Admin shipping fields
add_filter( 'woocommerce_admin_shipping_fields', 'custom_admin_shipping_fields', 10, 1 );
function custom_admin_shipping_fields( $shipping_fields ) {
global $pagenow;
if( $pagenow === 'post-new.php' && isset($_GET['post_type']) && $_GET['post_type'] === 'shop_order' ){
unset($shipping_fields['country']); // remove shipping country field
}
return $shipping_fields;
}
Этот код помещается в файл function.php вашей активной дочерней темы (или темы). Проверено и работает.
Других решений пока нет …