在 Woocommerce 中使用预 select 值禁用 select 字段
Make a select field disabled with a preselected value in Woocommerce
我希望能够在城市 select 领域实现同样的目标。我希望城市像国家字段一样,只有普通文本或无法更改的给定值。
下面是我 function.php 中 woocommerce 字段状态的代码。我应该使用什么类型?
add_filter( 'woocommerce_checkout_fields', 'custom_checkout_fields', 10, 1 );
function custom_checkout_fields( $fields ) {
$fields['billing']['billing_city']['type'] = 'select';
$fields['billing']['billing_city']['options'] = array('Auckland' => 'Auckland');
return $fields;
}
您可以在结帐页面 (以及我的帐户 >地址 > 账单地址部分)…
2 种不同的情况:
1) 对于 select
类型 :
add_filter( 'woocommerce_billing_fields', 'custom_checkout_billing_city_field', 10, 1 );
function custom_checkout_billing_city_field( $billing_fields ) {
// HERE define the city
$city = 'Auckland';
// Set the city value (to be sure)
WC()->customer->set_billing_city( $city );
// Change the billing city field
$billing_fields['billing_city']['type'] = 'select';
$billing_fields['billing_city']['options'] = array( $city => $city );
$billing_fields['billing_city']['default'] = $city;
$billing_fields['billing_city']['custom_attributes']['disabled'] = 'disabled';
return $billing_fields;
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。已测试并有效。
select 字段被禁用(只读) 预先selected 城市:
2) 对于 text
类型 :
add_filter( 'woocommerce_billing_fields', 'custom_checkout_billing_city_field', 10, 1 );
function custom_checkout_billing_city_field( $billing_fields ) {
// HERE define the city
$city = 'Auckland';
// Set the city value (to be sure)
WC()->customer->set_billing_city( $city );
// Change the billing city field
$billing_fields['billing_city']['default'] = $city;
$billing_fields['billing_city']['custom_attributes']['readonly'] = 'readonly';
return $billing_fields;
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。已测试并有效。
文本字段是只读的,预selected 城市:
我希望能够在城市 select 领域实现同样的目标。我希望城市像国家字段一样,只有普通文本或无法更改的给定值。
下面是我 function.php 中 woocommerce 字段状态的代码。我应该使用什么类型?
add_filter( 'woocommerce_checkout_fields', 'custom_checkout_fields', 10, 1 );
function custom_checkout_fields( $fields ) {
$fields['billing']['billing_city']['type'] = 'select';
$fields['billing']['billing_city']['options'] = array('Auckland' => 'Auckland');
return $fields;
}
您可以在结帐页面 (以及我的帐户 >地址 > 账单地址部分)…
2 种不同的情况:
1) 对于 select
类型 :
add_filter( 'woocommerce_billing_fields', 'custom_checkout_billing_city_field', 10, 1 );
function custom_checkout_billing_city_field( $billing_fields ) {
// HERE define the city
$city = 'Auckland';
// Set the city value (to be sure)
WC()->customer->set_billing_city( $city );
// Change the billing city field
$billing_fields['billing_city']['type'] = 'select';
$billing_fields['billing_city']['options'] = array( $city => $city );
$billing_fields['billing_city']['default'] = $city;
$billing_fields['billing_city']['custom_attributes']['disabled'] = 'disabled';
return $billing_fields;
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。已测试并有效。
select 字段被禁用(只读) 预先selected 城市:
2) 对于 text
类型 :
add_filter( 'woocommerce_billing_fields', 'custom_checkout_billing_city_field', 10, 1 );
function custom_checkout_billing_city_field( $billing_fields ) {
// HERE define the city
$city = 'Auckland';
// Set the city value (to be sure)
WC()->customer->set_billing_city( $city );
// Change the billing city field
$billing_fields['billing_city']['default'] = $city;
$billing_fields['billing_city']['custom_attributes']['readonly'] = 'readonly';
return $billing_fields;
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。已测试并有效。
文本字段是只读的,预selected 城市: