Wordpress Woocommerce签出字段-如何在选择选项中传递数据属性
在WoocomerCE结帐时,我有两个默认选择字段:billing_state和billing_city 当我选择一个账单州时,我需要账单城市只包含它的孩子。我使用select2插件来选择项目 例如,当我选择意大利时,我希望在罗马城和米兰城只出现Wordpress Woocommerce签出字段-如何在选择选项中传递数据属性,wordpress,woocommerce,Wordpress,Woocommerce,在WoocomerCE结帐时,我有两个默认选择字段:billing_state和billing_city 当我选择一个账单州时,我需要账单城市只包含它的孩子。我使用select2插件来选择项目 例如,当我选择意大利时,我希望在罗马城和米兰城只出现 <select name="billing_state" id="billing_state"> <option value="1">USA</option> <option value="2">
<select name="billing_state" id="billing_state">
<option value="1">USA</option>
<option value="2">Italy</option>
</select>
<select name="billing_city" id="billing_city">
<option value="1" data-parent="1">New York</option>
<option value="2" data-parent="1">Washington</option>
<option value="3" data-parent="2">Rome</option>
<option value="4" data-parent="2">Milan</option>
</select>
如果无法通过默认的woo commerce字段完成此操作,我想可以使用自定义计费\u city\u自定义选择来处理此选择。安装以下woo commerce插件: 将下面的代码放入function.php文件中
add_filter( 'wc_city_select_cities', 'my_cities' );
/*** Replace XX with the country code. Instead of YYY, ZZZ use actual state codes.*/
function my_cities( $cities ) {
$cities['XX'] = array(
'YYY' => array(
'City ',
'Another City'
),
'ZZZ' => array(
'City 3',
'City 4'
)
);
return $cities;
}
Below is an example of it:
add_filter( 'wc_city_select_cities', 'my_cities' );
function my_cities( $cities ) {
$cities['US'] = array(
'AL' => array(
'City1 of Alabama1',
'City2 of Alabama1'
),
'NJ' => array(
'City1 of New Jersey',
'City2 of New Jersey'
),
'OK' => array(
'City1 of Oklahoma',
'City2 of Oklahoma',
'City3 of Oklahoma',
'City4 of Oklahoma'
)
);
return $cities;
}
我已经设法使用这个插件。最初它不起作用,因为我禁用了国家/地区和邮政编码字段(在重新排序字段时不要取消设置或删除它们)。允许启用所有默认字段,但如果需要,可以通过css隐藏它们。我发现的另一个类似的插件是
add_filter( 'wc_city_select_cities', 'my_cities' );
/*** Replace XX with the country code. Instead of YYY, ZZZ use actual state codes.*/
function my_cities( $cities ) {
$cities['XX'] = array(
'YYY' => array(
'City ',
'Another City'
),
'ZZZ' => array(
'City 3',
'City 4'
)
);
return $cities;
}
Below is an example of it:
add_filter( 'wc_city_select_cities', 'my_cities' );
function my_cities( $cities ) {
$cities['US'] = array(
'AL' => array(
'City1 of Alabama1',
'City2 of Alabama1'
),
'NJ' => array(
'City1 of New Jersey',
'City2 of New Jersey'
),
'OK' => array(
'City1 of Oklahoma',
'City2 of Oklahoma',
'City3 of Oklahoma',
'City4 of Oklahoma'
)
);
return $cities;
}