Тёмная тема
При настройке страницы оформления заказа для любого магазина требуется использование того или иного перечня полей. По умолчанию в WooCommerce все поля являются обязательными.
Последнее время поступает много запросов на проблемы с оформлением заказов для WooCoommerce. Как выяснилось это вызвано плагином Checkout Field Editor for WooCommerce.
Для того чтоб отключить некоторые из полей без использования плагина, необходимо в файл custom-functions.php вставить следующий код:
add_filter( 'woocommerce_checkout_fields', 'wtw_unset_fields', 25 );
function wtw_unset_fields( $fields ) {
// поля помеченные двойной косой чертой остаются обязательными
// unset( $fields[ 'billing' ][ 'billing_first_name' ] ); // имя
// unset( $fields[ 'billing' ][ 'billing_last_name' ] ); // фамилия
// unset( $fields[ 'billing' ][ 'billing_phone' ] ); // телефон
// unset( $fields[ 'billing' ][ 'billing_email' ] ); // емайл
// unset( $fields[ 'billing' ][ 'billing_country' ] ); // страна
// эти поля становятся необзательными
unset( $fields[ 'billing' ][ 'billing_company' ] ); // компания
unset( $fields[ 'billing' ][ 'billing_address_1' ] ); // адрес 1
unset( $fields[ 'billing' ][ 'billing_address_2' ] ); // адрес 2
unset( $fields[ 'billing' ][ 'billing_city' ] ); // город
unset( $fields[ 'billing' ][ 'billing_state' ] ); // регион, штат
unset( $fields[ 'billing' ][ 'billing_postcode' ] ); // почтовый индекс
unset( $fields[ 'order' ][ 'order_comments' ] ); // заметки к заказу
return $fields;
}
Внимание
Для правильной работы оформления заказа поле billing_country должно быть включено. При этом данное поле, типа select, необходимо добавить и в вашу форму оформления с меткой wp = billing_country. Само поле при необходимости можно скрыть.
Для того чтоб выбрать страну доставки по умолчанию можно в том же файле custom-functions.php добавить следующий код:
add_filter( 'default_checkout_billing_country', 'default_checkout_country' );
function default_checkout_country( $country ) {
return 'RU'; // где RU это сокращенный код страны по умолчанию
}
Примечание
Полный список кодировок стран можно посмотреть тут