在我的帐户页面中,
我想使用下面的类似代码在特定的"城市"或者"邮政编码",以下代码用于在特定的状态下销售":
/**
* Sell only in Alger & Zeralda
*/
function wc_sell_only_states( $states ) {
$states['DZ'] = array(
'ALG' => __( 'Alger', 'woocommerce' ),
'ZLD' => __( 'Zeralda', 'woocommerce' ),
);
return $states;
}
add_filter( 'woocommerce_states', 'wc_sell_only_states' );
我应该使用或修改什么?
我尝试了这个,但它显示了"错误代码500":
// define the woocommerce_countries_base_city callback
function filter_woocommerce_countries_base_city( $var ) {
// make filter magic happen here...
$var['DZ'] = array(
'ALG' => __( 'Alger', 'woocommerce' ),
'ZLD' => __( 'Zeralda', 'woocommerce' ),
);
return $var;
};
// add the filter
add_filter( 'woocommerce_countries_base_city', 'filter_woocommerce_countries_base_city', 10, 1 );
先谢谢你了!
答案 0 :(得分:0)
试试这个对我有用!!
add_filter( 'woocommerce_form_field_args', 'custom_form_field_args', 10, 3 );
function custom_form_field_args( $args, $key, $value ) {
if ( $args['id'] == 'billing_city' ) {
$args = array(
'label' => __( 'Town / City', 'woocommerce' ),
'required' => TRUE,
'clear' => TRUE,
'type' => 'select',
'options' => array(
'' => ('Select City' ),
'Bangalore' => ('Bangalore' ),
'Mysore' => ('Mysore' )
),
'class' => array( 'update_totals_on_change' )
);
} // elseif … and go on
return $args;
};
答案 1 :(得分:0)
有一个更简单的解决方案。该方法还取决于下面列出的一些假设:
假设:如果您只想将City字段设置为一个City,则可以使用jQuery。使用jQuery,您将设置字段的值并禁用字段以避免更改City字段值。
一个粗略的例子是:
jQuery('#billing_city').val('USA').attr('disabled','disabled');
您只需要添加此行,使其在Checkout页面上执行。