首页 文章

在Woocommerce中添加运送区域的状态而不是邮政编码

提问于
浏览
1

我有一个woocommerce网站 . 默认情况下,在woocommerce我可以通过邮政编码限制送货区....但我如何在送货区添加我的国家的状态,以便客户可以通过结帐页面中的“下拉菜单”选择他们居住的州,而不是输入邮政编码?

我是编码的新手,所以有人可以告诉我在哪里输入代码 .

请...

1 回答

  • 2

    如果在woocommerce中没有为您的国家/地区定义状态,则应该使用字母代码(2或3个大写字符)和数组中相应的标签名称来定义它们 .

    这里的贝娄是基于法国国家代码 'FR' 的法国地区(未在Woocommerce中定义)的示例(因此您需要设置您的woocommerce国家代码):

    add_filter('woocommerce_states', 'add_custom_states_to_country');
    add_filter('woocommerce_countries_allowed_country_states', 'add_custom_states_to_country');
    function add_custom_states_to_country( $states ) {
        $states['FR'] = array(
            'AR' => __('Auvergne-Rhône-Alpes', 'woocommerce'),
            'BF' => __('Bourgogne-Franche-Comté', 'woocommerce'),
            'BR' => __('Bretagne', 'woocommerce'),
            'CV' => __('Centre-Val-de-Loire', 'woocommerce'),
            'CO' => __('Corse', 'woocommerce'),
            'IF' => __('Île-de-France', 'woocommerce'),
            'GE' => __('Grand Est', 'woocommerce'),
            'HF' => __('Hauts-de-France', 'woocommerce'),
            'NO' => __('Normandie', 'woocommerce'),
            'NA' => __('Nouvelle-Aquitaine', 'woocommerce'),
            'OC' => __('Occitanie', 'woocommerce'),
            'PL' => __('Pays de la Loire', 'woocommerce'),
            'PA' => __('Provence-Alpes-Côte d’Azur', 'woocommerce'),
        );
        return $states;
    }
    

    代码位于活动子主题(或活动主题)的function.php文件中 . 测试和工作 .

    Country Iso Codes


    In Shipping Zone Settings:

    enter image description here

    In Cart (shipping calculator):

    enter image description here

    In Checkout:

    enter image description here

相关问题