2017-05-01 8 views
1

Storefront 하위 테마 functions.php 파일에 WooCommerce 사용자 정의 체크 아웃 필드를 추가하고 있습니다.
"필수"속성이 있습니다.
이러한 필드를 청구 필드보다 페이지 상단에 표시하는 것이 목표입니다.필수 사용자 정의 WooCommerce 체크 아웃 필드가 입력 된 값의 유효성을 확인하지 않습니다.

결제하기 위해 제출 버튼을 클릭 할 때 유효한 데이터로 필드를 채우더라도 필요한 맞춤 필드 유효성 검사 오류 ('이름을 기입하십시오')가 표시되고 결제를 계속할 수 없습니다.

이 문제를 해결하는 방법이나 디버깅을 시작할 위치는 무엇입니까?

1. 변경 :

if (! $_POST['developer_name']) 


add_action('woocommerce_before_checkout_form', 'my_custom_checkout_fields'); 

function my_custom_checkout_fields($checkout) { 

    echo '<div id="my_custom_checkout_field" class="col4-set"><h2>' . __('name') . '</h2>'; 

    woocommerce_form_field('developer_name', array(
     'type'   => 'text', 
     'class'   => array('developer_name-class form-row form-row-first'), 
     'label'   => __('name'), 
     'placeholder' => __('fill in your name'), 
     'required'  => true, 
     ), $checkout->get_value('developer_name'));        

    echo '</div>'; 

} 

/** 
* Process the checkout 
*/ 
add_action('woocommerce_checkout_process', 'my_custom_checkout_field_process'); 

function my_custom_checkout_field_process() { 
    // Check if set, if its not set add an error. 
if (! $_POST['developer_name']) 
     wc_add_notice(__('please fill in your name'), 'error'); 
} 
내가 다음하지만 그들 중 누구도 도움이되지 시도 : 여기

functions.php의 코드입니다

내가 '3.0.5 버전 최신 Woocomerce에

add_action('woocommerce_before_checkout_form', 'my_custom_checkout_fields'); 

업데이트

add_action('woocommerce_after_checkout_form', 'my_custom_checkout_fields'); 

3.

에 :
if (empty($_POST['developer_name'])) 

2에서 트리거 변경 m Wordpress 4.7을 실행 중입니다. 4
추가 관련 활성 플러그인 :
유니 CPO - WooCommerce 옵션 및 가격 계산 공식은

답변