WooCommerce VAT 번호 체크아웃 페이지를 추가하는 방법
게시 됨: 2020-12-17WooCommerce 결제 페이지에 VAT 번호 필드를 추가하시겠습니까? WooCommerce에는 VAT 번호 필드를 추가하는 기능이 내장되어 있지 않습니다. 그러나 체크아웃 페이지와 내 계정 페이지에 VAT 필드를 추가하는 사용자 정의 PHP 스크립트를 만들었습니다.
WooCommerce VAT 번호 체크아웃
유럽 연합에서 제품을 판매하는 것은 대부분 법적 측면 때문에 매우 구체적입니다. 그러나 WooCommerce는 때때로 그것을 고려하지 않으므로 상점을 유럽 상황에 맞게 조정할 필요가 있습니다.
인보이스를 발행하려면 상점에서 VAT 식별 번호를 지원해야 합니다. 이 튜토리얼에서는 체크아웃 페이지에 VAT 필드를 추가하는 방법을 배웁니다.
결제 페이지에 VAT 필드를 추가하는 단계
따라야 할 단계는 다음과 같습니다.
- WordPress 사이트에 로그인하고 관리자로 대시보드에 액세스합니다.
- 대시보드 메뉴에서 모양 메뉴 > 테마 편집기 메뉴 를 클릭합니다. 테마 편집기 페이지가 열리면 확장자가 functions.php인 테마 함수 파일을 찾으십시오. 이 함수 파일을 열어 체크아웃 페이지에 VAT 필드를 추가하는 함수를 추가하십시오.
- functions.php 파일에 다음 코드를 추가합니다.
/******************************** 프론트엔드 ******************* *********************/ /**************************** VAT 필드를 추가할 필터: - 내 계정 - 양식 수정 -- 결제 필드 - 체크아웃 - 양식 편집 - 청구 필드 이 함수는 또한 양식 필드를 재정렬합니다. ***************************/ 기능 add_woocommerce_billing_fields($billing_fields){ // 청구서 수신 주소 양식 필드 재정렬 $billing_fields2['billing_first_name'] = $billing_fields['billing_first_name']; $billing_fields2['billing_last_name'] = $billing_fields['billing_last_name']; $billing_fields2['billing_vat'] = 배열( '유형' => '텍스트', '라벨' => __('부가가치세 번호', 'keyelp-shop-customization' ), '클래스' => 배열('형식 행 너비'), '필수' => 거짓, '명확한' => 사실 ); $merged_billing_fields = $billing_fields2 + $billing_fields; $merged_billing_fields 반환; } add_filter('woocommerce_billing_fields' , 'add_woocommerce_billing_fields'); /************ 청구서 수신 주소를 인쇄할 때 VAT를 추가하는 필터: - (1) 내 계정 - (2) 체크아웃 - 주문 접수(체크아웃 완료 후), +++ 인쇄된 출력의 형식을 지정하는 추가 필터. *****/ // (1) 내 계정에 청구서 수신 주소 인쇄 add_filter( 'woocommerce_my_account_my_address_formatted_address', 'njengah_my_account_my_address_formatted_address', 10, 3 ); 함수 njengah_my_account_my_address_formatted_address( $fields, $customer_id, $type ) { if ( $유형 == '청구' ) { $fields['vat'] = get_user_meta( $customer_id, 'billing_vat', true ); } $ 필드 반환; } // (2) Checkout -- Order Received (결제 완료 후 출력됨) add_filter( 'woocommerce_order_formatted_billing_address', 'njengah_add_vat_formatted_billing_address', 10, 2 ); 기능 njengah_add_vat_formatted_billing_address( $fields, $order ) { $fields['vat'] = $order->billing_vat; $ 필드 반환; } // 인쇄 서식을 위한 병합 VAT 변수 생성 add_filter( 'woocommerce_formatted_address_replacements', 'njengah_formatted_address_replacements', 10, 2 ); 함수 njengah_formatted_address_replacements( $address, $args ) { $address['{vat}'] = ''; $address['{vat_upper}']= ''; if ( ! 빈( $args['vat'] ) ) { $address['{vat}'] = $args['vat']; $address['{vat_upper}'] = strtoupper($args['vat']); } 반환 $ 주소; } //VAT를 포함하여 주소를 인쇄하기 위해 스페인어 형식을 정의합니다. add_filter( 'woocommerce_localisation_address_formats', 'njengah_localisation_address_format' ); 기능 njengah_localization_address_format( $formats ) { $formats['ES'] = "{이름}\n{회사}\n{vat_upper}\n{주소_1}\n{주소_2}\n{우편번호} {도시}\n{주}\n{국가} "; $ 형식을 반환합니다. } /******************************** 관리자 프로필 페이지 **************** ************************/ /******************** VAT 고객 메타 필드를 추가하기 위한 필터(청구서 수신 주소 그룹의 사용자 프로필 필드) *****************/ add_filter( 'woocommerce_customer_meta_fields', 'njengah_customer_meta_fields' ); 함수 njengah_customer_meta_fields( $fields ) { $fields['billing']['fields']['billing_vat'] = 배열( 'label' => __( 'VAT 번호', 'njengah' ) ); $ 필드 반환; } /******************************** 관리자 주문 페이지 ******************* *********************/ /************ 주문 시 양식 편집에 VAT를 추가하는 필터 -- 관리 페이지 *********/ add_filter( 'woocommerce_admin_billing_fields', 'njengah_admin_billing_fields' ); 기능 njengah_admin_billing_fields( $fields ) { $fields['vat'] = 배열( '라벨' => __( 'VAT 번호', 'njengah' ), '보여주다' => 참 ); $ 필드 반환; } /**************** 필터를 사용하여 사용자 메타 필드의 VAT 필드를 주문 관리 양식으로 복사합니다(관리 페이지의 전용 버튼 클릭 후). ******************/ add_filter( 'woocommerce_found_customer_details', 'njengah_found_customer_details' ); 기능 njengah_found_customer_details( $customer_data ) { $customer_data['billing_vat'] = get_user_meta( $_POST['user_id'], 'billing_vat', true ); $customer_data 반환; }
- 프론트 엔드의 결과는 다음과 같습니다.
- 다음은 관리자 측의 결과입니다.
결론
요약하면 WooCommerce 체크아웃 페이지에서 VAT 번호 체크아웃 필드를 추가하는 방법을 배웠습니다. 업데이트하는 동안 변경 사항이 손실되지 않도록 자식 테마의 functions.php 파일에 코드 조각을 추가하는 것이 좋습니다. 코드 조각은 발행된 송장에 VAT 번호를 자동으로 표시합니다.
유사한 기사
- 장바구니 업데이트 버튼을 숨기는 방법 WooCommerce 장바구니 페이지
- WooCommerce에서 재고 수량을 숨기는 방법
- 기본 메뉴 스토어프론트 WooCommerce를 이동하는 방법
- WooCommerce 제목을 숨기는 방법
- 체크아웃 무료 아이템 매장 테마를 단순화하는 방법
- WooCommerce Checkout 레이블을 변경하는 방법
- WooCommerce 결제 페이지에서 확인란 필드를 만드는 방법
- WooCommerce 조건부 결제 필드를 만드는 방법
- 체크아웃 WooCommerce에 선택 필드를 추가하는 방법
- WooCommerce Checkout 오류 메시지를 변경하는 방법
- WooCommerce Checkout 기본 국가를 추가하는 방법
- 결제 페이지를 새로 고치는 방법 WooCommerce
- 필수 WooCommerce 체크아웃 필드를 편집하는 방법
- WooCommerce 결제 페이지에 숨겨진 필드를 추가하는 방법
- WooCommerce 인보이스 결제 페이지를 추가하는 방법
- WooCommerce를 설정하는 방법 체크아웃하려면 로그인해야 합니다.
- Checkout WooCommerce에서 계정을 만드는 방법
- 무료로 Mpesa WooCommerce 결제를 보내는 방법
- WooCommerce에서 보안 체크아웃을 강제하는 방법