2017-02-20 5 views
1

이 코드를 통해 WooCommerce Billing 양식에 사용자 정의 필드를 추가 할 수 있습니다.WooCommerce 결제 양식에 맞춤 입력란을 추가 하시겠습니까?

이 필드가 표시하지만 문제는 필드 labelplaceholderclass name을하지 않았 음이다.

무엇이 여기에 있습니까? 이 코드를 내 자식 테마의 functions.php에 추가했습니다.

/******************************* 
    CUSTOM BILLING FIELD 
******************************** */ 
add_filter('woocommerce_billing_fields', 'custom_woocommerce_billing_fields'); 

function custom_woocommerce_billing_fields($fields) 
{ 

    $fields['billing']['billing_options'] = array(
     'label' => __('NIF', 'woocommerce'), // Add custom field label 
     'placeholder' => _x('Your NIF here....', 'placeholder', 'woocommerce'), // Add custom field placeholder 
     'required' => false, // if field is required or not 
     'clear' => false, // add clear or not 
     'type' => 'text', // add field type 
     'class' => array('my-css') // add class name 
    ); 

    return $fields; 
} 
+0

'class-wc-countries.php' 파일의'get_default_address_fields()'함수에 custombilling 필드의 코드를 추가 할 수 있습니다. –

답변

2

당신은 당신이이 청구 필드에 할당받을 자동으로 할 필드를 지정 할 필요가 없습니다 woocommerce_billing_fields를 사용하는 경우. 그러나 woocommerce_checkout_fields을 사용하는 경우 만 입력하면 shipping 또는 billing 필드를 지정해야합니다.

들어 woocommerce_billing_fields

add_filter('woocommerce_billing_fields', 'custom_woocommerce_billing_fields'); 

function custom_woocommerce_billing_fields($fields) 
{ 

    $fields['billing_options'] = array(
     'label' => __('NIF', 'woocommerce'), // Add custom field label 
     'placeholder' => _x('Your NIF here....', 'placeholder', 'woocommerce'), // Add custom field placeholder 
     'required' => false, // if field is required or not 
     'clear' => false, // add clear or not 
     'type' => 'text', // add field type 
     'class' => array('my-css') // add class name 
    ); 

    return $fields; 
} 


woocommerce_checkout_fields

add_filter('woocommerce_checkout_fields', 'custom_woocommerce_billing_fields'); 

function custom_woocommerce_billing_fields($fields) 
{ 
    $fields['billing']['billing_options'] = array(
     'label' => __('NIF', 'woocommerce'), // Add custom field label 
     'placeholder' => _x('Your NIF here....', 'placeholder', 'woocommerce'), // Add custom field placeholder 
     'required' => false, // if field is required or not 
     'clear' => false, // add clear or not 
     'type' => 'text', // add field type 
     'class' => array('my-css') // add class name 
    ); 

    return $fields; 
} 

참조하십시오

홉!

+0

작동하지 않습니다. 대금 청구 양식의 모든 필드가 제거됩니다. 그리고 새로운 필드는 추가되지 않습니다. 오류는 표시되지 않습니다. – JPashs

+0

@JPashs : 나는 내 두뇌의 형태로 코드를 테스트하지는 않았지만'woocommerce_billing_fields'를 사용하는 hook 및 array 매개 변수에 논리 오류가 있으며'[ 'billing']'을 다시 추가하면 결과적으로 원하는 출력을 얻지 못합니다. 그냥이 'woocommerce_checkout_fields'와 후크를 교체하고 언급 한 기능을 계속 누른 다음 작동합니다 질문입니다. –

+0

나는 이것을 시도했다 : http://pastebin.com/raw/JrnHfuVT 그러나 아직 일하지 않는다. 제가 누락 된 부분을 알려주고 답안의 코드를 바꿀 수 있습니까? 그래서 나는 당신의 대답을 받아 들일 수 있습니다. 감사. – JPashs