如何重新排列my-account
字段。我想在billing_address_1
和billing_state
字段之后找到billing_city
字段。
我使用了woocommerce_form_field_args
钩子,然后使用了switch
查找了每个arg
。
function bcod_wc_form_field_args( $args, $key, $value ){
switch ($key) {
case 'billing_country':
$args['class'] = array('hidden');
break;
case 'billing_address_1' :
$args['priority'] = '85';// push down this field to bottom of state and city
$args['label'] = $args['label'] . ' Priority : ' . $args['priority'];
$args['placeholder'] = 'خیابان اصلی ، خیابان فرعی ، کوچه ، پلاک';
break;
case 'billing_state' :
$args['priority'] = '50';
$args['label'] = $args['label'] . ' Priority : ' . $args['priority'];
$args['class'] = array('form-row-first');
break;
case 'billing_city' :
$args['priority'] = '55';
$args['label'] = $args['label'] . ' Priority : ' . $args['priority'];
$args['class'] = array('form-row-last');
break;
case 'billing_postcode' :
$args['label'] = $args['label'] . ' Priority : ' . $args['priority'];
$args['priority'] = '190';
$args['class'] = array('form-row-first');
break;
case 'billing_email' :
$args['label'] = $args['label'] . ' Priority : ' . $args['priority'];
$args['priority'] = '80';
$args['class'] = array('form-row-last');
break;
default:
return $args;
break;
}
return $args;
}
我希望billing_address_1
字段位于state
和city
之后,但是此代码不会影响字段的种类。优先级已更改,但字段位于默认位置。此图像是我的结果:
答案 0 :(得分:1)
要重新排列“我的帐户”的“地址”结算字段,您需要使用类似以下内容的方法:
func reloadYourRows(name: <anyname>) {
let row = <your array name>.index(of: <name passing in>)
let reloadPath = IndexPath(row: row!, section: 0)
tableView.reloadRows(at: [reloadPath], with: .middle)
}
代码进入您的活动子主题(或活动主题)的function.php文件中。经过测试,可以正常工作。