当前位置: 首页 > 知识库问答 >
问题:

在Woocommerce中将邮政编码配送字段更改为下拉列表

王亮
2023-03-14

我正在尝试将shipping中的postcode字段设置为select类型,并在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个答案

    匡安宜
    2023-03-14

    有多种方法可以做到这一点:

    1)仅用于运输邮政编码字段,您将使用以下内容:

    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;
    }
    

    代码进入函数。活动子主题(或活动主题)的php文件。它应该有效。

    2) 对于帐单和发货邮政编码字段,您可以改为使用:

    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;
    }
    

    代码进入函数。活动子主题(或活动主题)的php文件。它应该有效。

     类似资料:
    • 问题内容: 我正在尝试学习如何“压缩”列表。为此,我有一个程序,在某个特定位置执行以下操作: 这给了我三个列表,,,和,每一个,比方说,大小为20。 现在,我这样做: 但是,当我这样做时: 我得到20,这不是我期望的。我预计三个。我认为我做的事情根本上是错误的。 问题答案: 将三个包含20个元素的列表放在一起时,结果将包含20个元素。每个元素都是一个三元组。 你自己看: 要找出每个元组包含多少个元

    • 问题内容: 对于以下建议,我们将不胜感激–是否可以通过oracle中sql中的某种检查约束来验证电子邮件和邮政编码字段?还是这种事情,因为我怀疑带有正则表达式的pl / sql? 谢谢 问题答案: 如果您只关注美国,则可以通过平面文件格式获取多种邮政编码来源,并将其导入到表中,然后将地址中的外键约束应用于该表。 可以将电子邮件地址与正则表达式进行匹配(需要10g或更高)以验证格式,但是检查电子邮件

    • 本文向大家介绍匹配邮政编码的Java程序,包括了匹配邮政编码的Java程序的使用技巧和注意事项,需要的朋友参考一下 假设我们有以下邮政编码。 现在,设置以下正则表达式以匹配美国的邮政编码。 示例 输出结果

    • 问题内容: 我正在编写一个特定于美国的Web应用程序,因此其他国家/地区用于邮政编码的格式并不重要。我有一份我们要加载到包含以下内容的数据库表中的邮政编码列表: 5位美国邮政编码 纬度 经度 usps分类代码 状态码 城市 邮政编码是主键,因为这是我要查询的内容。我开始使用中型int 5,但是它会截断前导零的邮政编码。 我考虑使用char5,但担心对char变量建立索引会对性能造成影响。 所以我的

    • 我想创建一个触发器,在插入或更新之前,检查复选框,如果复选框字段为真,则将运输邮政编码(其API名称为ShippingPoistCode)设置为与计费邮政编码相同(BillingPoistCode)。 Apex触发器必须称为“Account tAddressTrigger”。 帐户对象将需要一个新的自定义复选框,该复选框应该具有字段标签“匹配账单地址”和字段名称“Match_Billing_Add

    • 我对Dynamics365和JavaScript都是新手。 到目前为止,当用户必须填写地址表单时,手动写入值,因此对于同一地区,我们有类似于:伦巴第亚,伦巴第亚,伦巴第亚,伦巴第亚等的值... 这是最好的做法吗?如果不是什么? 我可以从crm创建JavaScript的列表和get/set值,但我不知道如何在自由文本域上构建它,有什么帮助吗?