2014-05-23 1 views
4

woocommerce의 제품 추가 페이지에 사용자 지정 텍스트 상자 필드를 추가했습니다. 이제 나는 그것을 (의무적으로) 만들고 싶다. 나는 "required"=> true 인수를 전달하여 그것을 시도했다. 하지만 작동하지 않습니다. 아래 코드를 참조하십시오제품을 추가 할 때 woocommerce 제품 페이지에서 사용자 지정 필드 값을 필수 (필수)로 만들 수 있습니다.

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

그러나 텍스트 상자를 강제로 만들지는 않습니다. 아무도 내가 어떻게 할 수 있는지 말해 줄 수 없습니까?

답변

5

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') 
) 
); 
+0

감사합니다. – Vidhi

+0

입력 가격을 만드는 방법은 올바른 형식의 woocommerce 가격입니까? (예 : 12.57) – huykon225

0

필요에 따라 다음 코드를 수정할 수 있습니다. 더 많은 옵션을 보려면

// 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 내이 답변으로 도움이 될 수있는 카트에 제품을 추가하는 동안.

관련 문제