Логотип

Кастомизация страницы оформления заказа WooCommerce

Дата публикации: 2021-04-11 00:20:00
Комментариев: 0

В этой статье хочу рассказать о доработке страницы оформления заказа в WooCommerce. Так как в стандартном варианте форма имеет много лишних полей, которые необходимо научится правильно удалять при помощи хуков. Многие Вебмастера удаляют поля при помощи CSS стилей. Это неправильно! Так как поля имеют проверку и удалив элемент с помощью стилей, проверку полей не удалишь. Для того чтобы правильно удалить неиспользуемые поля необходимо внести правки в файл — functions.php. Он находится в корневой папке Вашей темы.


Все правки файла functions.php осуществляются только через FTP доступ к сайту! Иначе при возникновении ошибки Вы рискуете обрушить сайт! Не используйте для этого действия стили CSS или JavaScript.

Удаляем ненужные поля на странице оформления заказа в WooCommerce

С помощью хуков, удалить ненужные поля на странице оформления заказа WooCommerce проще и правильнее чем с помощью стилей CSS. Приведу пример. Допустим Вам необходимо удалить поля из раздела «Адрес доставки» — «Компания», «Страна», «Примечание к заказу» и «1-ая строка адреса» Вот функция которую будет необходимо вставить в файл functions.php

function wp_wc_pole($array) 
{
	unset($array['order']['order_comments']); // Примечание к заказу
	unset($array['billing']['billing_company']); // Компания
	unset($array['billing']['billing_country']); // Страна
	unset($array['billing']['billing_address_1']); // 1-ая строка адреса 
	return $array;
}
add_filter('woocommerce_checkout_fields', 'wp_wc_pole', 9999);

Функция для удаления всех полей из разделов «Адрес доставки» и «Адрес выставления счета» формы оформления заказа WooCommerce будет выглядеть так.

function wp_wc_pole($array) 
{
	unset( $array['billing']['billing_first_name'] ); // Имя
	unset( $array['billing']['billing_last_name'] ); // Фамилия
	unset( $array['billing']['billing_company'] ); // Компания
	unset( $array['billing']['billing_country'] ); // Страна
	unset( $array['billing']['billing_address_1'] ); // 1-ая строка адреса 
	unset( $array['billing']['billing_address_2'] ); // 2-ая строка адреса 
	unset( $array['billing']['billing_city'] ); // Населённый пункт
	unset( $array['billing']['billing_state'] ); // Область / район
	unset( $array['billing']['billing_postcode'] ); // Почтовый индекс
	unset( $array['billing']['billing_phone'] ); // Телефон
	unset( $array['billing']['billing_email'] ); // Email

	unset( $array['order']['order_comments'] ); // Примечание к заказу
	
	unset( $array['shipping']['shipping_first_name'] ); // Имя
	unset( $array['shipping']['shipping_last_name'] ); // Фамилия
	unset( $array['shipping']['shipping_company'] ); // Компания
	unset( $array['shipping']['shipping_country'] ); // Страна
	unset( $array['shipping']['shipping_address_1'] ); // 1-ая строка адреса 
	unset( $array['shipping']['shipping_address_2'] ); // 2-ая строка адреса 
	unset( $array['shipping']['shipping_city'] ); // Населённый пункт
	unset( $array['shipping']['shipping_state'] ); // Область / район
	unset( $array['shipping']['shipping_postcode'] ); // Почтовый индекс
	
	return $array;
}
add_filter('woocommerce_checkout_fields', 'wp_wc_pole', 9999);

Убираем проверку полей на странице оформления заказа в WooCommerce

Очень часто необходимо убрать проверку полей на заполнение на странице оформления заказа WooCommerce. Если Вам необходимо сделать необязательными к заполнению поля в разделе «Адрес доставки» то функция будет выглядеть так.

function wp_fil_validation($array) 
{
	unset($array['billing']['billing_first_name']['required']); 
	unset($array['billing']['billing_last_name']['required']);
	unset($array['billing']['billing_company']['required']);
	unset($array['billing']['billing_country']['required']);
	unset($array['billing']['billing_state']['required']);
	unset($array['billing']['billing_address_1']['required']);
	unset($array['billing']['billing_address_2']['required']);
	unset($array['billing']['billing_city']['required']);
	
    return $array;
}
add_filter('woocommerce_default_address_fields' , 'wp_fil_validation');

Таким способом можно правильно удалить неиспользуемые поля в стандартной форме оформления заказа WooCommerce. Также Вы можете отключить проверку полей на заполнение.

Последние публикации

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Реклама:

Реклама:

Последние записи:

Последние комментарии: шт.