วิธีเพิ่มหน้าชำระเงินหมายเลข VAT ของ WooCommerce
เผยแพร่แล้ว: 2020-12-17 คุณต้องการเพิ่มฟิลด์หมายเลข VAT ในหน้าชำระเงิน WooCommerce หรือไม่? WooCommerce ไม่มีฟังก์ชันในตัวเพื่อเพิ่มฟิลด์หมายเลข VAT อย่างไรก็ตาม ฉันได้สร้างสคริปต์ PHP แบบกำหนดเองซึ่งจะเพิ่มฟิลด์ภาษีมูลค่าเพิ่มในหน้าชำระเงินและหน้าบัญชีของฉัน
 คุณต้องการเพิ่มฟิลด์หมายเลข VAT ในหน้าชำระเงิน WooCommerce หรือไม่? WooCommerce ไม่มีฟังก์ชันในตัวเพื่อเพิ่มฟิลด์หมายเลข VAT อย่างไรก็ตาม ฉันได้สร้างสคริปต์ PHP แบบกำหนดเองซึ่งจะเพิ่มฟิลด์ภาษีมูลค่าเพิ่มในหน้าชำระเงินและหน้าบัญชีของฉัน 
WooCommerce หมายเลข VAT ชำระเงิน
การขายสินค้าในสหภาพยุโรปมีความเฉพาะเจาะจงมาก ส่วนใหญ่เป็นเพราะแง่มุมทางกฎหมาย อย่างไรก็ตาม บางครั้ง WooCommerce ไม่ได้คำนึงถึงเรื่องนี้ ดังนั้นจึงจำเป็นต้องปรับร้านค้าให้เข้ากับเงื่อนไขของยุโรป
ร้านค้าของคุณควรสนับสนุนหมายเลขประจำตัวผู้เสียภาษีมูลค่าเพิ่มสำหรับการออกใบแจ้งหนี้ ในบทช่วยสอนนี้ คุณจะได้เรียนรู้วิธีเพิ่มฟิลด์ภาษีมูลค่าเพิ่มในหน้าชำระเงิน
ขั้นตอนในการเพิ่มฟิลด์ภาษีมูลค่าเพิ่มในหน้าชำระเงิน
นี่คือขั้นตอนที่คุณต้องปฏิบัติตาม:
- ลงชื่อเข้าใช้ไซต์ WordPress ของคุณและเข้าถึงแดชบอร์ดในฐานะผู้ดูแลระบบ
- จากเมนูแดชบอร์ด ให้คลิกที่ เมนูลักษณะที่ปรากฏ > เมนูตัวแก้ไขธีม เมื่อหน้าแก้ไขธีมเปิดขึ้น ให้มองหาไฟล์ฟังก์ชันของธีมที่มีนามสกุล functions.php เปิดไฟล์ฟังก์ชันนี้เพื่อเพิ่มฟังก์ชันเพื่อเพิ่มฟิลด์ VAT ในหน้าการชำระเงิน
- เพิ่มรหัสต่อไปนี้ในไฟล์ functions.php:
 /************************************ ด้านหน้า ******************* *********************/
/**********************************
กรองเพื่อเพิ่มฟิลด์ VAT ไปที่:
- บัญชีของฉัน - แก้ไขแบบฟอร์ม - ฟิลด์การเรียกเก็บเงิน
- ชำระเงิน - แก้ไขแบบฟอร์ม - ฟิลด์การเรียกเก็บเงิน
ฟังก์ชันนี้ยังจัดลำดับฟิลด์แบบฟอร์มใหม่อีกด้วย
*********************************/
ฟังก์ชัน add_woocommerce_billing_fields($billing_fields){
            //เรียงลำดับใหม่ woo ฟิลด์แบบฟอร์มที่อยู่สำหรับเรียกเก็บเงินของฉัน
            $billing_fields2['billing_first_name'] = $billing_fields['billing_first_name'];
            $billing_fields2['billing_last_name'] = $billing_fields['billing_last_name'];
            $billing_fields2['billing_vat'] = อาร์เรย์ (
                        'type' => 'ข้อความ',
                        'label' => __('หมายเลขภาษีมูลค่าเพิ่ม', 'keyelp-shop-customization' ),
                        'class' => array('form-row-wide'),
                        'จำเป็น' => เท็จ
                        'ชัดเจน' => จริง
            );
                
            $merged_billing_fields = $billing_fields2 + $billing_fields;
            ส่งคืน $merged_billing_fields;
}
add_filter('woocommerce_billing_fields' , 'add_woocommerce_billing_fields');
/************
ตัวกรองเพื่อเพิ่มภาษีมูลค่าเพิ่มเมื่อพิมพ์ที่อยู่สำหรับการเรียกเก็บเงินเมื่อ:
- (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 (ฟิลด์ $, $customer_id, $type) {
            if ( $type == 'การเรียกเก็บเงิน') {
                        $fields['vat'] = get_user_meta( $customer_id, 'billing_vat', จริง);
            }
            ส่งคืนฟิลด์ $;
}
// (2) ชำระเงิน - ได้รับคำสั่งซื้อแล้ว (พิมพ์หลังจากชำระเงินเรียบร้อยแล้ว)
add_filter( 'woocommerce_order_formatted_billing_address', 'njengah_add_vat_formatted_billing_address', 10, 2 );
ฟังก์ชั่น njengah_add_vat_formatted_billing_address (ฟิลด์ $, $order) {
            $fields['vat'] = $order->billing_vat; $fields['vat'] = $order->billing_vat;
            ส่งคืนฟิลด์ $;
}
// การสร้างตัวแปร VAT การควบรวมกิจการสำหรับการจัดรูปแบบการพิมพ์
add_filter( 'woocommerce_formatted_address_replacements', 'njengah_formatted_address_replacements', 10, 2 );
ฟังก์ชั่น njengah_formatted_address_replacements ( ที่อยู่ $, $args ) {
            $address['{vat}'] = '';
            $address['{vat_upper}']= '';
            if ( ! empty( $args['vat'] ) ) ) {
                        $address['{vat}'] = $args['vat']; $address['{vat}'] = $args['vat'];
                        $address['{vat_upper}'] = strtoupper($args['vat']); $ที่อยู่['{vat_upper}'] = strtoupper($args['vat']);
            }
            ส่งคืนที่อยู่ $;
}
//กำหนดรูปแบบภาษาสเปนเพื่อพิมพ์ที่อยู่ รวมภาษีมูลค่าเพิ่ม
add_filter( 'woocommerce_localisation_address_formats', 'njengah_localisation_address_format' );
ฟังก์ชั่น njengah_localisation_address_format ( รูปแบบ $ ) {
            $formats['ES'] = "{name}\n{company}\n{vat_upper}\n{address_1}\n{address_2}\n{รหัสไปรษณีย์} {city}\n{state}\n{ประเทศ} ";
            ส่งคืนรูปแบบ $;
}
/************************************ หน้าโปรไฟล์ผู้ใช้ของผู้ดูแลระบบ **************** ******************************/
/******************
กรองเพื่อเพิ่มฟิลด์ meta ของลูกค้า VAT (ฟิลด์โปรไฟล์ผู้ใช้ในการจัดกลุ่มที่อยู่สำหรับการเรียกเก็บเงิน)
*****************/
add_filter( 'woocommerce_customer_meta_fields', 'njengah_customer_meta_fields' );
ฟังก์ชัน njengah_customer_meta_fields ($fields) {
            $fields['billing']['fields']['billing_vat'] = อาร์เรย์ (
                        'label' => __( 'หมายเลขภาษีมูลค่าเพิ่ม', 'njengah' )
            );
            ส่งคืนฟิลด์ $;
}
/****************************** หน้าสั่งซื้อของแอดมิน ******************* *********************/
/************ 
กรองเพื่อเพิ่มภาษีมูลค่าเพิ่มในแบบฟอร์มแก้ไขคำสั่งซื้อ -- หน้าผู้ดูแลระบบ
*********/
add_filter( 'woocommerce_admin_billing_fields', 'njengah_admin_billing_fields' );
ฟังก์ชัน njengah_admin_billing_fields ($fields) {
            $fields['vat'] = อาร์เรย์ (
                        'label' => __( 'หมายเลขภาษีมูลค่าเพิ่ม', 'njengah' ),
                        'show' => จริง
            );
            ส่งคืนฟิลด์ $;
}
/****************
กรองเพื่อคัดลอกฟิลด์ภาษีมูลค่าเพิ่มจากฟิลด์เมตาผู้ใช้ไปยังแบบฟอร์มการจัดการคำสั่งซื้อ (หลังจากคลิกปุ่มเฉพาะบนหน้าผู้ดูแลระบบ)
******************/
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', จริง);
            ส่งคืน $customer_data;
}-  นี่คือผลลัพธ์ในส่วนหน้า:  
-  นี่คือผลลัพธ์ในด้านผู้ดูแลระบบ:  
บทสรุป
โดยสรุป คุณได้เรียนรู้วิธีเพิ่มช่องการชำระเงินหมายเลข VAT ในหน้าชำระเงินของ WooCommerce ฉันแนะนำให้เพิ่มข้อมูลโค้ดในไฟล์ functions.php ของธีมลูกของคุณ เพื่อไม่ให้การเปลี่ยนแปลงที่คุณทำหายไประหว่างการอัปเดต ข้อมูลโค้ดแสดงหมายเลข VAT ในใบแจ้งหนี้ที่ออกโดยอัตโนมัติ

บทความที่คล้ายกัน
- วิธีซ่อนปุ่มอัปเดตหน้ารถเข็น WooCommerce
- วิธีซ่อนปริมาณในสต็อกใน WooCommerce
- วิธีการย้ายหน้าร้านเมนูหลัก WooCommerce
- วิธีซ่อนคำอธิบายผลิตภัณฑ์ หัวเรื่อง WooCommerce
- วิธีทำให้การชำระเงินธีมหน้าร้านฟรีเป็นเรื่องง่าย
- วิธีการเปลี่ยน WooCommerce Checkout Labels
- วิธีสร้างช่องทำเครื่องหมายในหน้าชำระเงินของ WooCommerce
- วิธีสร้างฟิลด์การชำระเงินตามเงื่อนไขของ WooCommerce
- วิธีเพิ่ม Select Field เพื่อชำระเงิน WooCommerce
- วิธีเปลี่ยนข้อความแสดงข้อผิดพลาดของ WooCommerce Checkout
- วิธีเพิ่ม WooCommerce Checkout Default Country
- วิธีรีเฟรชหน้าชำระเงิน WooCommerce
- วิธีแก้ไขช่องชำระเงิน WooCommerce ที่จำเป็น
- วิธีเพิ่มฟิลด์ที่ซ่อนอยู่ในหน้าชำระเงินของ WooCommerce
- วิธีเพิ่มหน้าชำระเงินใบแจ้งหนี้ WooCommerce
- วิธีตั้งค่า WooCommerce คุณต้องลงชื่อเข้าใช้ Checkout
- วิธีสร้างบัญชีที่ชำระเงิน WooCommerce
- วิธีส่งไปยัง Mpesa WooCommerce การชำระเงินฟรี
- วิธีบังคับให้ชำระเงินที่ปลอดภัยใน WooCommerce
