Woocommerce Checkout: добавьте заполнитель в раскрывающемся списке стран - PullRequest
4 голосов
/ 13 февраля 2020

в кассе моего Woocommerce-Shop - это выпадающий список для выбора вашей страны. По умолчанию США уже выбраны автоматически. Как просто использовать вместо этого метку-заполнитель с «выбрать свою страну»?

Я не смог найти никакого решения для этой топи c У кого-нибудь есть идеи?

Я изменил другие метки-заполнители, которые это не выпадающие списки, а внутри одной и той же формы:

add_filter( 'woocommerce_checkout_fields' , 'override_billing_checkout_fields', 20, 1 );
function override_billing_checkout_fields( $fields ) {
    $fields['billing']['billing_first_name']['placeholder'] = 'First Name*';
    $fields['billing']['billing_last_name']['placeholder'] = 'Last Name*';
    $fields['billing']['billing_city']['placeholder'] = 'Town / City*';
    $fields['billing']['billing_postcode']['placeholder'] = 'ZIP*';
    $fields['billing']['billing_email']['placeholder'] = 'Email Address*';
    return $fields;
}

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

function woo_add_my_country( $country ) {
   $country["PLACE"] = 'select your country*';
   return $country;
}
add_filter( 'woocommerce_countries', 'woo_add_my_country', 10, 1 );


add_filter( 'default_checkout_billing_country', 'bbloomer_change_default_checkout_country' );

function bbloomer_change_default_checkout_country() {
  return 'PLACE'; 
}

Буду признателен за любую помощь или советы!

Ответы [ 2 ]

3 голосов
/ 13 февраля 2020

Это работает для меня, попробуйте это

// Change the default country and state on checkout page. 
// This works for a new session.
add_filter( 'default_checkout_country', 'xa_set_default_checkout_country' );
add_filter( 'default_checkout_state', 'xa_set_default_checkout_state' );
function xa_set_default_checkout_country() {
  // Returns empty country by default.
    return null;
  // Returns India as default country.
     // return 'IN';
}

function xa_set_default_checkout_state() {
  // Returns empty state by default.
    return null;
  // Returns Madhya Pradesh as default state.
     // return 'MP';
}
function woo_add_my_country( $country ) {
   $country["PLACE"] = 'select your country*';
   return $country;
}
add_filter( 'woocommerce_countries', 'woo_add_my_country', 10, 1 );


add_filter( 'default_checkout_billing_country', 'bbloomer_change_default_checkout_country' );

function bbloomer_change_default_checkout_country() {
  return 'PLACE'; 
}
1 голос
/ 13 февраля 2020

Просто go до WooCommerce > Settings. На вкладке Общие вы найдете Местоположение клиента по умолчанию . Установите значение No location by default

enter image description here

...