Simpan bidang checkout khusus menggunakan woocommerce_checkout_update_order_meta

Diterbitkan: 2025-07-01

Menyesuaikan checkout WooCommerce Anda adalah kebutuhan umum, terutama ketika Anda ingin mengumpulkan detail tambahan dari pelanggan Anda. Baik itu catatan khusus atau input khusus seperti instruksi pengiriman, WooCommerce memungkinkan untuk menyimpan bidang ini sesuai pesanan. Dalam panduan ini, Anda akan belajar cara menambahkan dua bidang baru dan menyimpan nilai -nilainya menggunakan tindakan woocommerce_checkout_update_order_meta . Plus, kami akan menunjukkan bagaimana plugin seperti Flexible Checkout Fields Pro dapat membuat semuanya lebih mudah.

Mari kita berjalan selangkah demi selangkah cara menyimpan meta pesanan khusus di WooCommerce.

Apa itu kustomisasi checkout di WooCommerce dan bagaimana data pesanan diproses?

Proses checkout WooCommerce melibatkan beberapa langkah kunci. Ketika seorang pelanggan mengisi formulir dan menyentuh 'pesanan tempat', WooCommerce memvalidasi data, menyimpan informasi penagihan/pengiriman, dan memicu kait yang dapat digunakan pengembang untuk menyimpan data tambahan.

Secara default, hanya bidang standar seperti nama, email, dan alamat yang disimpan.

Tetapi Anda dapat memperpanjang ini menggunakan filter woocommerce_checkout_fields untuk menambahkan bidang khusus ke formulir.

Kemudian, dengan tindakan woocommerce_checkout_update_order_meta , Anda dapat menyimpan nilainya sebagai meta pesanan .

Ini sangat berguna ketika Anda ingin memasukkan hal -hal seperti pesan hadiah, preferensi pengiriman, atau instruksi khusus.

Anda bahkan dapat menampilkan data ini nanti di panel admin, email, atau halaman terima kasih.

Bagaimana cara menambahkan dan menyimpan bidang khusus menggunakan kode di WooCommerce?

Katakanlah Anda ingin mengumpulkan dua bagian informasi tambahan:

  • Input Teks Kustom ("Teks Kustom")
  • Pesan TextArea ("Pesan Kustom")

Inilah cara melakukannya.

Kode di bawah ini dengan woocommerce_checkout_fields dan woocommerce_checkout_update_order_meta Tindakan harus ditambahkan ke fungsi tema.php untuk menampilkan bidang checkout baru dan menyimpan data sebagai meta pesanan.

1. Tambahkan bidang khusus ke formulir checkout

 add_filter('woocommerce_checkout_fields', 'add_custom_checkout_fields'); function add_custom_checkout_fields($fields) { $fields['billing']['custom_text_field'] = array( 'type' => 'text', 'label' => __('Custom Text', 'woocommerce'), 'required' => false, 'priority' => 110, ); $fields['billing']['custom_message_field'] = array( 'type' => 'textarea', 'label' => __('Custom Message', 'woocommerce'), 'required' => false, 'priority' => 120, ); return $fields; }
Menambahkan Bidang Kustom ke Contoh Formulir Checkout WooCommerce
Menambahkan Bidang Kustom ke Contoh Formulir Checkout WooCommerce

2. Simpan nilai bidang ke meta pesanan

 add_action('woocommerce_checkout_update_order_meta', 'save_custom_checkout_fields'); function save_custom_checkout_fields($order_id) { if (!empty($_POST['custom_text_field'])) { update_post_meta($order_id, '_custom_text_field', sanitize_text_field($_POST['custom_text_field'])); } if (!empty($_POST['custom_message_field'])) { update_post_meta($order_id, '_custom_message_field', sanitize_textarea_field($_POST['custom_message_field'])); } }

Sekarang, kedua bidang akan muncul di panel admin di bawah bidang khusus pesanan.

Contoh Teks dan TextArea Kustom Dalam detail pesanan
Contoh Teks dan TextArea Kustom Dalam detail pesanan
Anda juga dapat menyesuaikan kode untuk memvalidasi data atau mengizinkan pengeditannya dengan woocommerce_wp_text_input dan woocommerce_wp_textarea_input berfungsi dalam detail pesanan di dalam div dengan class = "edit_address" sehingga disembunyikan sebelum diedit.

Pendekatan ini bekerja dengan baik, tetapi membutuhkan beberapa pengetahuan pengkodean.

Ini juga memiliki keterbatasan dalam hal validasi, jenis lapangan, atau menampilkan data secara kondisional.

Di situlah bidang checkout fleksibel masuk.

Mengapa menggunakan Flexible Checkout Fields Pro alih -alih menulis kode khusus?

Saat mengkode bidang Anda sendiri dan menyimpannya dengan tindakan woocommerce_checkout_update_order_meta memberi Anda kontrol penuh, itu tidak selalu merupakan solusi yang paling efisien atau aman, terutama untuk non-pengembang.

Di situlah plugin bidang checkout fleksibel menjadi opsi yang lebih mudah dan lebih cepat.

Menambahkan Bidang Kustom ke Formulir Checkout WooCommerce dengan Flexible Checkout Fields Pro Contoh
Menambahkan Bidang Kustom ke Formulir Checkout WooCommerce dengan Flexible Checkout Fields Pro Contoh
Ada versi gratis yang tersedia di wordpress.org: bidang checkout fleksibel - gratis, yang sempurna untuk manajemen bidang dasar. Namun, versi Pro memberi Anda lebih banyak fleksibilitas.
Tampilan Bidang di Halaman Khusus - Pengaturan Plugin di Bidang Checkout Fleksibel WooCommerce
Tampilan Bidang di Halaman Khusus - Pengaturan Plugin di Bidang Checkout Fleksibel WooCommerce

Berikut adalah 5 fitur menonjol yang membuat bidang checkout fleksibel Pro layak digunakan:

  • Drag & Drop Field Manager - Tidak perlu menulis fungsi PHP. Cukup seret dan memesan ulang bidang langsung di admin WordPress.
  • Jenis Bidang Variasi - Tambahkan teks, tekstar, pilih, radio, kotak centang, pemetik tanggal, waktu, dan banyak lagi.
  • Aturan tampilan - Tampilkan atau sembunyikan bidang berdasarkan metode pengiriman/pembayaran yang dipilih atau ketentuan keranjang.
    Kondisi untuk bidang formulir khusus di bidang checkout fleksibel pro wooCommerce
    Kondisi untuk bidang formulir khusus di bidang checkout fleksibel pro wooCommerce
  • Validasi yang telah ditentukan sebelumnya -dengan mudah mengatur bidang yang diperlukan dan menggunakan opsi validasi bawaan tanpa fungsi khusus.
  • Harga - Harga tambahan per bidang checkout.
    Harga tambahan per formulir Contoh bidang di bidang checkout fleksibel pro wooCommerce
    Harga tambahan per formulir Contoh bidang di bidang checkout fleksibel pro wooCommerce

Alih -alih mendaftarkan bidang secara manual dan menyimpan data meta dengan woocommerce_checkout_update_order_meta , Anda mendapatkan antarmuka lengkap.

Plus, semua nilai bidang yang disimpan muncul dengan rapi dalam ringkasan pesanan dan email.

Jika Anda mencari solusi jangka panjang dan dapat diskalakan untuk menangani bidang checkout khusus dan menyimpan data untuk memesan meta , plugin ini menghemat jam pengkodean dan pemeliharaan.

Bidang checkout fleksibel pro wooCommerce £ 59

Sunting, tambahkan bidang baru atau sembunyikan yang tidak perlu dari formulir woocommerce. Tambahkan harga ke bidang dan gunakan logika bersyarat. Ini semua tentang konversi dan pengalaman pengguna yang lebih baik. BARU: Sekarang Anda dapat mengatur beberapa kondisi (atau) di bawah satu atau lebih kelompok kondisi (dan).

Instalasi Aktif: 90.000+ | Peringkat WordPress:

Tambahkan ke Keranjang atau lihat detail
90.000+ instalasi aktif
Terakhir Diperbarui: 2025-06-23
Bekerja dengan WooCommerce 9.6 - 9.9

WOOCOMMERCE_CHECKOUT_UPDATE_ORDER_META VS Plugin: Metode mana yang harus Anda pilih?

Jika Anda membangun integrasi khusus atau memiliki persyaratan yang sangat spesifik, maka woocommerce_checkout_update_order_meta dikombinasikan dengan woocommerce_checkout_fields adalah cara yang kuat dan andal untuk digunakan.

Namun, jika Anda ingin cara yang lebih mudah untuk menyesuaikan checkout Anda dan menghindari kode sepenuhnya, plugin bidang checkout fleksibel harus dimiliki.

Ini mempercepat alur kerja Anda dan menghapus dugaan dari mengedit checkout WooCommerce Anda.

Ringkasan

  • Gunakan woocommerce_checkout_fields untuk menambahkan bidang checkout baru.
  • Gunakan woocommerce_checkout_update_order_meta untuk menyimpan bidang -bidang tersebut untuk memesan meta.
  • Kode khusus memberikan fleksibilitas tetapi membutuhkan dukungan dan pengujian berkelanjutan.
  • Flexible Checkout Fields Pro memungkinkan Anda mengelola bidang secara visual dengan opsi canggih.
  • Ada versi gratis juga jika Anda hanya perlu pengeditan bidang dasar.