【问题标题】:How can i make custom field value required ( compulsory ) in woocommerce product page when adding product添加产品时,如何在 woocommerce 产品页面中设置自定义字段值(强制)
【发布时间】:2014-07-12 08:27:30
【问题描述】:

我在 woocommerce 的添加产品页面中添加了自定义文本框字段。现在我想让它成为必需的(强制)。我通过传递参数“必需”=> true 来尝试它。但它不工作。请看下面的代码

woocommerce_wp_text_input(
  array(
    'id' => 'special_price',
    'label' => __( 'Wholesaler Price *', 'woocommerce' ),
    'placeholder' => '',
    'desc_tip' => 'true',
    'required' => 'true',
    'description' => __( 'Enter wholesaler price here.', 'woocommerce' )
  )
);

但它不是强制文本框。请问谁能告诉我该怎么做?

【问题讨论】:

    标签: php wordpress woocommerce custom-fields required


    【解决方案1】:

    对于required HTML5 属性和其他自定义属性woocommerce_wp_text_input() 函数有custom_attributes 选项。

    woocommerce_wp_text_input(
      array(
        'id' => 'special_price',
        'label' => __( 'Wholesaler Price *', 'woocommerce' ),
        'placeholder' => '',
        'desc_tip' => 'true',
        'custom_attributes' => array( 'required' => 'required' ),
        'description' => __( 'Enter wholesaler price here.', 'woocommerce' )
      )
    );
    

    【讨论】:

    • 如何创建输入价格是正确格式的 woocommerce 价格? (例如:12.57)
    【解决方案2】:

    您可以根据需要修改以下代码。

    // Validate when adding to cart
            add_filter( 'woocommerce_add_to_cart_validation', 'woocommerce_add_to_cart_validation_custom', 10, 3 );
    
    /  validation
    
        function woocommerce_add_to_cart_validation_custom($passed, $product_id, $qty){
    
            global $woocommerce;
    
    $option = ''; // your custom field's name
    
       if( isset($_POST[sanitize_title($option)]) && $_POST[sanitize_title($option)] == '' )
            $passed = false;
    
        if (!$passed)
            $woocommerce->add_error( sprintf( __('"%s" is a required field.', 'woocommerce'), $option) );
    
            return $passed;
    
        }
    

    在购物车中添加产品时,您可能会发现How to add a custom text box value to cart session array in Woocommerce我的这个答案很有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-24
      • 1970-01-01
      • 1970-01-01
      • 2018-11-07
      • 1970-01-01
      • 1970-01-01
      • 2020-11-05
      相关资源
      最近更新 更多