【发布时间】:2023-04-04 08:17:01
【问题描述】:
我现在尝试了几种方法来更改帐单和运输的表单字段。我正在尝试执行以下操作:
在结算部分
- 更改地址2占位符内容
- 更改地址 2 标签
- 地址 1 更改为 50%
- 地址 2 将等级更改为 50%
- 城市变化等级为 50%
- 状态更改等级为 50%
- 邮政编码更改等级为 50%
- 电话更改等级为 50%
- 地址 2 删除阅读器类
在送货地址部分
- 地址2更改占位符地址2更改标签
- 地址 1 更改类别 50%
- 地址 2 更改类别 50%
- 状态更改等级为 50%
- 邮政编码更改等级为 50%
- 地址 2 删除文本阅读器类
他们需要不同的布局,所以我不能使用“默认”挂钩(有效)。到目前为止,这是我的代码。
//customize woocommerce checkout fields
add_filter( 'woocommerce_checkout_fields' , 'jm_checkout_billing_fields', 20, 1 );
function jm_checkout_billing_fields( $billing_fields ){
// Change placeholder
$billing_fields['billing']['billing_address_2']['placeholder'] = __('Apt #, Floor, etc', $domain);
// Change label
$billing_fields['billing']['billing_address_2']['label'] = __('Apt #, Floor, etc', $domain);
// Change class
$billing_fields['billing']['billing_address_1']['class'] = array('form-row-first'); // 50%
$billing_fields['billing']['billing_address_2']['class'] = array('form-row-last'); // 50%
$billing_fields['billing']['billing_city']['class'] = array('form-row-first'); // 50%
$billing_fields['billing']['billing_state']['class'] = array('form-row-last'); // 50%
$billing_fields['billing']['billing_postcode']['class'] = array('form-row-first'); // 50%
$billing_fields['billing']['billing_phone']['class'] = array('form-row-last'); // 50%
$billing_fields['billing']['billing_address_2']['label_class'] = array(); // No label class
return $billing_fields;
}
add_filter('woocommerce_address_fields', 'jm_address_fields', 20, 1);
function jm_address_fields( $address_fields ){
if( is_checkout()){ // On checkout page only
// Change placeholder
$address_fields['address_2']['placeholder'] = __( 'Apt #, Floor, etc', $domain );
//change label
$address_fields['address_2']['label'] = __( 'Apt #, Floor, etc', $domain );
// Change class
$address_fields['address_1']['class'] = array('form-row-first'); // 50%
$address_fields['address_2']['class'] = array('form-row-last'); // 50%
$address_fields['state']['class'] = array('form-row-first'); // 50%
$address_fields['postcode']['class'] = array('form-row-last'); // 50%
$address_fields['address_2']['label_class'] = array(); // No label class
}
return $address_fields;
}
如果我对所有内容都使用“woocommerce_default_address_fields”,它可以工作,但同样,我需要帐单地址与我的地址字段的布局不同。
我可以将这些设置为“默认值”,但需要以“城市”开头的不同
- 更改地址2占位符内容
- 更改地址 2 标签
- 地址 1 更改为 50%
- 地址 2 将等级更改为 50%
- 地址 2 删除文本阅读器类
我按照此处的答案进行了更改,以尝试使其单独工作:https://stackoverflow.com/a/48801880/14664702
【问题讨论】:
-
您没有在代码中提到您要实现的目标。你只提到了什么是行不通的,如果我们不知道你在做什么,这也是没有用的。说明您要解决的具体问题是什么。
-
@bhanu 我更新了我的帖子以包含更多详细信息。谢谢
-
你使用什么主题 @jmasked ?我可以在店面试试这个,因为可能有很多自定义 CSS 编写使答案无效。
-
谢谢@bhanu 我正在使用你好主题
-
请分享它的链接??
标签: wordpress woocommerce checkout