Страница оформления заказа Woocommerce содержит неконфигурируемые поля

#php #wordpress #woocommerce #checkout

#php #wordpress #woocommerce #Оформить покупку

Вопрос:

Я застрял в попытке настроить поля оформления заказа моего сайта в woo commerce.Она предварительно заполняется значениями и не удаляется даже после очистки кэша. https://shinujohn.com/checkout / …устанавливается как с помощью шорткода по умолчанию введите описание изображения здесь

В стране теперь есть 2 поля … одно из них доступно для просмотра. выпадающий список. Кэширование на стороне сервера отключено.

Тема, которую я использую, — Kallyas

Я пробовал:-

  1. Редактор полей: он даже не показывает поле .. скажем, название компании. и добавление нового поля здесь не отражается. даже если я добавлю его в поля выставления счетов или оформления заказа введите описание изображения здесь
  2. Добавление кода в functions.php

/возвращает поле woo commerce как пустое/

 add_filter('woocommerce_checkout_get_value','__return_empty_string', 1, 1);
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
add_filter( 'woocommerce_billing_fields' , 'custom_override_billing_fields' );

or

    function custom_override_billing_fields( $fields ) {
      unset($fields['billing_postcode']);
      unset($fields['billing_state']);
      unset($fields['billing_country']);
      unset($fields['billing_address_1']);
      return $fields;
    }
  

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

Ответ №1:

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

 add_filter( 'woocommerce_checkout_fields' , 'custom_override_billing_fields', 5);

function custom_override_billing_fields( $fields ) {
     unset($fields['billing']['billing_postcode']);
     unset($fields['billing']['billing_state']);
     unset($fields['billing']['billing_country']);
     unset($fields['billing']['billing_address_1']);
     return $fields;
}
  

Может быть, этот код поможет вам.

Комментарии:

1. Спасибо, Суреш, я добавил этот фрагмент кода, но проблема не устранена. кэш тоже очищен

2. @ShinuJohn Пожалуйста, распечатайте $fields массив внутри custom_override_billing_fields функции и удалите необходимые поля из массива. Может быть, это поможет вам