首页 文章

将邮政编码运输领域更改为Woocommerce中的drpdown

提问于
浏览
1

我试图使邮寄中的邮政编码字段只是一个选择类型,我在woocommerce结帐页面中有我的选项:

  • 取消设置送货状态和过帐代码结帐字段
add_filter( 'woocommerce_checkout_fields' , 'partial_unsetting_checkout_fields' );
function partial_unsetting_checkout_fields( $fields ) {
     unset($fields['shipping']['woocommerce_checkout_fields']);
     return $fields;
}
  • 重新插入自定义送货过帐代码结帐字段,
add_filter( 'woocommerce_checkout_fields' , 'art_override_default_address_fields' );
function art_override_default_address_fields( $fields ) {
    $fields['shipping_postcode']['type'] = 'select';
    $fields['shipping_postcode']['class'] = array('form-row-wide');
    $fields['shipping_postcode']['required'] = true;
    $fields['shipping_postcode']['label'] = __('Postcode', 'my_theme_slug');
    $fields['shipping_postcode']['placeholder'] = __('Enter Postcode', 'my_theme_slug');
    $fields['shipping_postcode']['default'] ='Choice 1';
    $fields['shipping_postcode']['options'] = array(
        'option_1' => 'Choice 1',
        'option_2' => 'Choice 2',
        'option_3' => 'Choice 3'
    );
}

如何使用自定义选项将结算邮政编码转换为选择字段?

1 回答

  • 1

    有多种方法可以做到:

    1) For shipping postcode field only ,您将使用以下内容:

    add_filter( 'woocommerce_shipping_fields' , 'customize_shipping_postcode_field' );
    function customize_shipping_postcode_field( $shipping_fields ) {
    
        $shipping_fields['shipping_postcode']['type'] = 'select';
        $shipping_fields['shipping_postcode']['options'] = array(
            ''         => __('Select your postcode', 'woocommerce'),
            'option_1' => 'Choice 1',
            'option_2' => 'Choice 2',
            'option_3' => 'Choice 3'
        );
    
        return $shipping_fields;
    }
    

    代码位于活动子主题(或活动主题)的function.php文件中 . 它应该有效 .


    2) For billing and shipping postcode fields ,您可以使用它:

    add_filter( 'woocommerce_default_address_fields' , 'customize_postcode_fields' );
    function customize_postcode_fields( $adresses_fields ) {
    
        $adresses_fields['postcode']['type'] = 'select';
        $adresses_fields['postcode']['options'] = array(
            ''         => __('Select your postcode', 'woocommerce'),
            'option_1' => 'Choice 1',
            'option_2' => 'Choice 2',
            'option_3' => 'Choice 3'
        );
    
        return $adresses_fields;
    }
    

    代码位于活动子主题(或活动主题)的function.php文件中 . 它应该有效 .


    enter image description here

相关问题