Генератор CSS-свойства «border-radius»   •   Online-инструменты
436 просм
0 комм
Поделиться:

Делаем обязательные/необязательные поля в оформлении заказа WooCommerce

Когда вы создаете свой интернет-магазин, особенно с помощью плагина WooCommerce в CMS WordPress, нужно продумать каждую его мелочь. Особенно это касается оформления заказа, итоговых шагов пользователя при покупке понравившегося ему товара.

Как и в любом другом инструменте для создания интернет-магазина, в WooCommerce существует большое количество полей, часть из которых обязательна для заполнения. Если вы продаете материальные товары (вазу, телевизор, стул), то, возможно, все эти поля вам и потребуются, чтобы знать, куда отправить товар и рассчитать стоимость его доставки. Но если у вас электронные билеты, различные ключи для игр и прочие цифровые товары – то вам будет достаточно таких данных, как имя покупателя и его e-mail для отправки товара.

Для того чтобы снять обязательность заполнения или, наоборот, ее поставить на определенное поле, вам необходимо воспользоваться следующей функцией:

function custom_my_fields($fields) {
	
	$fields["billing"]["billing_last_name"]["required"] = false; // Фамилия не обязательна
	$fields["billing"]["billing_phone"]["required"] = true; // Телефон обязателен

	return $fields;
 
}

add_filter("woocommerce_checkout_fields", "custom_my_fields");

Ее вы вставляете в низ файла functions.php, который находится в папке вашей темы.

Как вы поняли, в примере выше вы делаете фамилию необязательным полем, а телефон – обязательным.

Вот по такому принципу вы обрабатываете все нужные и ненужные вам поля. Вот полный перечень стандартных полей WooCommerce:

Оплата:

$fields["billing"]["billing_first_name"]["required"]
$fields["billing"]["billing_last_name"]["required"]
$fields["billing"]["billing_company"]["required"]
$fields["billing"]["billing_address_1"]["required"]
$fields["billing"]["billing_address_2"]["required"]
$fields["billing"]["billing_city"]["required"]
$fields["billing"]["billing_postcode"]["required"]
$fields["billing"]["billing_country"]["required"]
$fields["billing"]["billing_state"]["required"]
$fields["billing"]["billing_email"]["required"]
$fields["billing"]["billing_phone"]["required"]

Доставка:

$fields["shipping"]["shipping_first_name"]["required"]
$fields["shipping"]["shipping_last_name"]["required"]
$fields["shipping"]["shipping_company"]["required"]
$fields["shipping"]["shipping_address_1"]["required"]
$fields["shipping"]["shipping_address_2"]["required"]
$fields["shipping"]["shipping_city"]["required"]
$fields["shipping"]["shipping_postcode"]["required"]
$fields["shipping"]["shipping_country"]["required"]
$fields["shipping"]["shipping_state"]["required"]

Заказ:

$fields["order"]["order_comments"]["required"]

Если вы хотите не просто снять обязательность заполнения того или иного поля, но и вовсе скрыть его с экрана – читайте инструкцию в этой статье.

0
комментариев
Гостям запрещено учавствовать в обсуждениях сайта. Авторизуйтесь, чтобы иметь возможность оставить свое мнение о материале или задать вопрос.