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

Опубликовано: 2021-02-22

Изменить платежные реквизиты Страница оформления заказа WooCommerce Существует несколько способов редактирования платежных данных в WooCommerce. В этом уроке я хочу выделить способ редактирования платежных данных, чтобы удалить поля или удалить требование.

В предыдущем посте я рассказал, как отключить поле «Почтовый индекс» на странице оформления заказа или как удалить проверку почтового индекса .

Как редактировать платежные реквизиты WooCommerce (удалить поля, отключить проверку, добавить пользовательские заполнители и добавить пользовательские метки форм)

Сегодня я хочу показать вам, как редактировать платежные реквизиты и удалять поля, которые вы не хотите показывать своим клиентам.

WooCommerce Изменить платежные реквизиты с помощью бесплатного плагина

Существует более десятка плагинов, как бесплатных, так и премиальных, которые вы можете использовать для редактирования платежных данных WooCommerce. как изменить платежные реквизиты woocommerce

Каждый из этих плагинов имеет уникальные функции и дизайн интерфейса. Лучший бесплатный плагин для редактирования платежных данных в WooCommerce — Checkout Field Editor (Checkout Manager) для WooCommerce.

Этот плагин позволяет редактировать основные поля «Оплата», «Доставка» и «Дополнительно» при оформлении заказа WooCommerce.

В форме редактирования вы можете добавить настраиваемые параметры поля, такие как: Имя, Тип, Метка, Заполнитель, Класс, Класс метки, правила проверки и т. д. (доступность этих параметров может меняться в зависимости от типов полей).

WooCommerce Изменить платежные реквизиты с помощью фрагмента кода

Вы также можете изменить платежные данные на странице оформления заказа WooCommerce, добавив фрагмент кода в файл functions.php вашей темы.

Удалить платежные поля WooCommerce Checkout

Во-первых, вы можете удалить поля для выставления счетов, которые вам не нравятся, используя приведенный ниже фрагмент кода:

 

/**
 * Измените платежные реквизиты, чтобы удалить поля, которые вам не нужны 
 **/
функция njengah_remove_checkout_fields($fields) {

    // Платежные поля
    unset($fields['billing']['billing_company'] );
    unset( $fields['billing']['billing_email'] );
    unset($fields['billing']['billing_phone'] );
    unset( $fields['billing']['billing_state'] );
    unset( $fields['billing']['billing_first_name'] );
    unset( $fields['billing']['billing_last_name'] );
    unset($fields['billing']['billing_address_1'] );
    unset($fields['billing']['billing_address_2'] );
    unset($fields['billing']['billing_city'] );
    unset( $fields['billing']['billing_postcode'] );
	
	вернуть $поля;
	
} 

	add_filter('woocommerce_checkout_fields', 'njengah_remove_checkout_fields'); 

Вы можете удалить все поля и добавить настраиваемые поля или удалить из фрагмента кода ниже те, которые вы хотите сохранить.

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

Например, если бы мы хотели отображать только имя, фамилию и адрес электронной почты только в платежных реквизитах, мы бы изменили код, чтобы он был таким, как в приведенном ниже фрагменте кода:

 

функция njengah_remove_checkout_fields_keep_email_name($fields) {

    // Платежные поля
    unset($fields['billing']['billing_company'] );
    unset($fields['billing']['billing_phone'] );
    unset( $fields['billing']['billing_state'] );
    unset($fields['billing']['billing_address_1'] );
    unset($fields['billing']['billing_address_2'] );
    unset($fields['billing']['billing_city'] );
    unset( $fields['billing']['billing_postcode'] );
	
	вернуть $поля;
	
} 

	add_filter('woocommerce_checkout_fields', 'njengah_remove_checkout_fields_keep_email_name'); 

Удалить поля выставления счетов и поля доставки WooCommerce Checkout

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

 

    функция njengah_remove_checkout_fields_billing_shipping($fields) {
   
		// Платежные поля
		unset($fields['billing']['billing_company'] );
		unset( $fields['billing']['billing_email'] );
		unset($fields['billing']['billing_phone'] );
		unset( $fields['billing']['billing_state'] );
		unset( $fields['billing']['billing_first_name'] );
		unset( $fields['billing']['billing_last_name'] );
		unset($fields['billing']['billing_address_1'] );
		unset($fields['billing']['billing_address_2'] );
		unset($fields['billing']['billing_city'] );
		unset( $fields['billing']['billing_postcode'] );

		// Поля доставки
		unset($fields['shipping']['shipping_company'] );
		unset($fields['shipping']['shipping_phone'] );
		unset($fields['shipping']['shipping_state'] );
		unset( $fields['shipping']['shipping_first_name'] );
		unset( $fields['shipping']['shipping_last_name'] );
		unset($fields['shipping']['shipping_address_1'] );
		unset($fields['shipping']['shipping_address_2'] );
		unset($fields['shipping']['shipping_city'] );
		unset($fields['shipping']['shipping_postcode'] );

    вернуть $поля;
  } 
add_filter('woocommerce_checkout_fields', 'njengah_remove_checkout_fields_billing_shipping'); 

Удалить поля оплаты WooCommerce Checkout, поля доставки и примечания к заказу

Вы также можете удалить поле примечания к заказу, расположенное под разделом выставления счетов и разделом доставки, используя ту же логику, но добавив параметр удаления order_comments , как в комбинированном фрагменте кода ниже:

 

    функция njengah_remove_checkout_fields_billing_shipping_order ($fields) {
   
		// Платежные поля
		unset($fields['billing']['billing_company'] );
		unset( $fields['billing']['billing_email'] );
		unset($fields['billing']['billing_phone'] );
		unset( $fields['billing']['billing_state'] );
		unset( $fields['billing']['billing_first_name'] );
		unset( $fields['billing']['billing_last_name'] );
		unset($fields['billing']['billing_address_1'] );
		unset($fields['billing']['billing_address_2'] );
		unset($fields['billing']['billing_city'] );
		unset( $fields['billing']['billing_postcode'] );

		// Поля доставки
		unset($fields['shipping']['shipping_company'] );
		unset($fields['shipping']['shipping_phone'] );
		unset($fields['shipping']['shipping_state'] );
		unset( $fields['shipping']['shipping_first_name'] );
		unset( $fields['shipping']['shipping_last_name'] );
		unset($fields['shipping']['shipping_address_1'] );
		unset($fields['shipping']['shipping_address_2'] );
		unset($fields['shipping']['shipping_city'] );
		unset($fields['shipping']['shipping_postcode'] );

                // Поля заказа
                unset($fields['order']['order_comments'] );

    вернуть $поля;
  } 
add_filter('woocommerce_checkout_fields', 'njengah_remove_checkout_fields_billing_shipping_order'); 

WooCommerce Редактировать платежные реквизиты Требование или проверка

Когда одно из полей для выставления счетов не заполнено, WooCommerce выдает ошибку, похожую на самую распространенную ошибку — Почтовый индекс для выставления счетов не является допустимым почтовым индексом/почтовым индексом.

Это происходит потому, что по умолчанию в полях оплаты выставления счетов WooCommerce есть функция проверки.

Чтобы решить эту проблему и избежать появления этих ошибок, когда поле остается пустым, вам необходимо удалить проверку платежных данных.

Приведенный ниже фрагмент кода удалит проверку из поля «Телефон для выставления счетов». Этот код следует добавить в файл functions.php вашей активной темы.

 /**
	 * Пример удаления проверки поля выставления счетов
	 **/ 
 
		add_filter('woocommerce_billing_fields', 'njengah_remove_phone_field_validation');

		функция njengah_remove_phone_field_validation($fields) {
		
			$fields['billing_phone']['required'] = false;
			
			вернуть $поля;
		}

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

$fields['billing_phone']['required'] = false;

WooCommerce Изменить платежные реквизиты Заполнители и ярлыки

Еще один способ изменить платежные данные WooCommerce — изменить метки и заполнители формы страницы оформления заказа WooCommerce по умолчанию. Вы можете добиться этого, используя фрагмент кода ниже:

 add_filter('woocommerce_checkout_fields', 'njengah_edit_checkout_placeholders_labels');
  
		функция njengah_edit_checkout_placeholders_labels($fields){
		
			 $fields['billing']['billing_company']['placeholder'] = 'Пользовательский заполнитель';
			 $fields['billing']['billing_company']['label'] = 'Пользовательский ярлык';
		 
		 вернуть $поля;
		 }

Вывод

В этом руководстве мы выделили различные способы редактирования платежных данных WooCommerce, чтобы настроить страницу оформления заказа WooCommerce в соответствии с вашими потребностями. Важно помнить, что эти фрагменты кодов работают так же, как работают плагины, которые редактируют платежные данные, детали доставки и примечания к заказу.

Также рекомендуется всегда добавлять этот фрагмент кода в дочернюю тему активной темы. Если у вас нет дочерней темы, вы можете узнать, как создать дочернюю тему, используя этот пост — создать дочернюю тему Storefront.

Существует несколько способов настройки WooCommerce, но наиболее распространенным является скрытие функций, которые вам не нравятся. Я поделился исчерпывающим руководством о том, как скрыть большинство функций в вашем магазине WooCommerce, Ultimate WooCommerce Hide Guide. Это может быть отличным местом для начала работы с настройкой WooCommerce.

Если вы используете тему WooCommerce по умолчанию — тему Storefront, вы можете узнать из более чем 80 советов по настройке Storefront о том, как сделать ваш магазин WooCommerce профессиональным.

Наконец, я всегда готов помочь вам с любой проблемой WooCommerce или исправить любые ошибки на вашем сайте, если вам требуется нанять эксперта WordPress или разработчика WooCommerce.

Похожие статьи