Cara Menambahkan Halaman Pembayaran Nomor PPN WooCommerce
Diterbitkan: 2020-12-17Apakah Anda ingin menambahkan bidang nomor PPN di halaman checkout WooCommerce? WooCommerce tidak memiliki fungsi bawaan untuk menambahkan bidang nomor PPN. Namun, saya telah membuat skrip PHP khusus yang akan menambahkan bidang PPN pada halaman checkout dan halaman akun saya.
Pembayaran Nomor PPN WooCommerce
Menjual produk di Uni Eropa sangat spesifik, terutama karena aspek hukum. Namun, WooCommerce terkadang tidak memperhitungkannya, sehingga perlu menyesuaikan toko dengan kondisi Eropa.
Sangat penting bahwa toko Anda harus mendukung nomor identifikasi PPN untuk menerbitkan faktur. Dalam tutorial ini, Anda akan belajar cara menambahkan kolom PPN di halaman checkout.
Langkah-langkah untuk Menambahkan bidang PPN di Halaman Checkout
Berikut adalah langkah-langkah yang perlu Anda ikuti:
- Masuk ke situs WordPress Anda dan akses dasbor sebagai pengguna admin.
- Dari menu dasbor, klik Menu Penampilan > Menu Editor Tema . Saat halaman editor tema terbuka, cari file fungsi tema dengan ekstensi functions.php. Buka file fungsi ini untuk menambahkan fungsi untuk menambahkan bidang PPN di halaman checkout.
- Tambahkan kode berikut ke file functions.php:
/***************************** PALING DEPAN ******************* ************************/ /*************************** Filter untuk menambahkan bidang PPN ke: - Akun Saya - Edit Formulir - Bidang Penagihan - Checkout - Edit Formulir - Bidang Penagihan Fungsi ini juga menyusun ulang bidang formulir. ***************************/ fungsi add_woocommerce_billing_fields($billing_fields){ //pesan ulang woo bidang formulir alamat penagihan saya $billing_fields2['billing_first_name'] = $billing_fields['billing_first_name']; $billing_fields2['billing_last_name'] = $billing_fields['billing_last_name']; $billing_fields2['billing_vat'] = array( 'ketik' => 'teks', 'label' => __('Nomor PPN', 'keyelp-shop-customization' ), 'class' => array('form-baris-lebar'), 'wajib' => salah, 'jelas' => benar ); $merged_billing_fields = $billing_fields2 + $billing_fields; kembalikan $merged_billing_fields; } add_filter('woocommerce_billing_fields' , 'add_woocommerce_billing_fields'); /********* Filter untuk menambahkan PPN saat mencetak alamat penagihan pada: - (1) Akun saya - (2) Checkout - Pesanan Diterima (setelah checkout selesai), +++ Filter tambahan untuk memformat hasil cetak. ********/ // (1) Mencetak Alamat Penagihan di Akun Saya add_filter( 'woocommerce_my_account_my_address_formatted_address', 'njengah_my_account_my_address_formatted_address', 10, 3 ); function njengah_my_account_my_address_formatted_address( $fields, $customer_id, $type ) { if ( $type == 'penagihan' ) { $fields['vat'] = get_user_meta( $customer_id, 'billing_vat', true ); } kembalikan $bidang; } // (2) Checkout -- Order Diterima (dicetak setelah menyelesaikan checkout) add_filter( 'woocommerce_order_formatted_billing_address', 'njengah_add_vat_formatted_billing_address', 10, 2 ); function njengah_add_vat_formatted_billing_address( $fields, $order ) { $fields['vat'] = $order->billing_vat; kembalikan $bidang; } // Membuat variabel PPN penggabungan untuk format pencetakan add_filter( 'woocommerce_formatted_address_replacements', 'njengah_formatted_address_replacements', 10, 2 ); function njengah_formatted_address_replacements( $address, $args ) { $alamat['{vat}'] = ''; $alamat['{vat_upper}']= ''; jika ( ! kosong( $args['vat'] ) ) { $address['{vat}'] = $args['vat']; $alamat['{vat_upper}'] = strtoupper($args['vat']); } kembali $alamat; } //Menentukan format Spanyol untuk mencetak alamat, termasuk PPN. add_filter( 'woocommerce_localisation_address_formats', 'njengah_localisation_address_format' ); function njengah_localisation_address_format( $formats ) { $formats['ES'] = "{nama}\n{perusahaan}\n{vat_upper}\n{alamat_1}\n{alamat_2}\n{kode pos} {kota}\n{negara bagian}\n{negara} "; kembalikan $format; } /***************************** HALAMAN PROFIL PENGGUNA ADMIN **************** ***************************/ /*************** Filter untuk menambahkan bidang meta Pelanggan PPN (bidang profil pengguna pada pengelompokan alamat penagihan) *****************/ add_filter( 'woocommerce_customer_meta_fields', 'njengah_customer_meta_fields' ); function njengah_customer_meta_fields( $fields ) { $fields['billing']['fields']['billing_vat'] = array( 'label' => __( 'Nomor PPN', 'njengah' ) ); kembalikan $bidang; } /*************************** HALAMAN PEMESANAN ADMIN ******************* ************************/ /********* Filter untuk menambahkan PPN ke Formulir Edit Pesanan -- Halaman Admin *********/ add_filter( 'woocommerce_admin_billing_fields', 'njengah_admin_billing_fields' ); function njengah_admin_billing_fields( $fields ) { $bidang['vat'] = array( 'label' => __( 'Nomor PPN', 'njengah' ), 'tunjukkan' => benar ); kembalikan $bidang; } /****************** Filter untuk menyalin bidang PPN dari bidang meta Pengguna ke formulir Admin Pesanan (setelah mengklik tombol khusus di halaman admin) *********************/ add_filter( 'woocommerce_found_customer_details', 'njengah_found_customer_details'); function njengah_found_customer_details( $customer_data ) { $customer_data['billing_vat'] = get_user_meta( $_POST['user_id'], 'billing_vat', true ); kembalikan $data_pelanggan; }
- Ini adalah hasil di ujung depan:
- Ini adalah hasil di sisi admin:
Kesimpulan
Singkatnya, Anda telah mempelajari cara menambahkan bidang checkout nomor PPN di halaman checkout WooCommerce. Saya sarankan menambahkan potongan kode pada file functions.php dari tema anak Anda sehingga perubahan yang Anda buat tidak akan hilang selama pembaruan. Cuplikan kode secara otomatis menampilkan Nomor PPN pada faktur yang diterbitkan.
Artikel Serupa
- Cara Menyembunyikan Tombol Keranjang Pembaruan Halaman Keranjang WooCommerce
- Cara Menyembunyikan Jumlah Stok Di WooCommerce
- Cara Memindahkan Menu Utama Storefront WooCommerce
- Cara Menyembunyikan Judul Deskripsi Produk WooCommerce
- Cara Menyederhanakan Tema Toko Barang Gratis Checkout
- Cara Mengubah Label Checkout WooCommerce
- Cara Membuat Bidang Kotak Centang di Halaman Checkout WooCommerce
- Cara Membuat Bidang Checkout Bersyarat WooCommerce
- Cara Menambahkan Bidang Pilihan ke Checkout WooCommerce
- Cara Mengubah Pesan Kesalahan Pembayaran WooCommerce
- Cara Menambahkan Negara Default Checkout WooCommerce
- Cara Menyegarkan Halaman Checkout WooCommerce
- Cara Mengedit Bidang Checkout WooCommerce yang Diperlukan
- Cara Menambahkan Bidang Tersembunyi di Halaman Checkout WooCommerce
- Cara Menambahkan Halaman Checkout Faktur WooCommerce
- Cara Mengatur WooCommerce Anda Harus Masuk ke Checkout
- Cara Membuat Akun di Checkout WooCommerce
- Cara Mengirim Pembayaran Mpesa WooCommerce Gratis
- Cara Memaksa Checkout Aman Di WooCommerce