Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menggantikan Cangkuk \'woocommerce_add_order_item_meta\' yang Dihentikan untuk Meta Tersuai pada Item Pesanan?
Menggantikan Cangkuk "woocommerce_add_order_item_meta" yang Dihentikan untuk Meta Tersuai pada Item Pesanan
Dalam keluaran WooCommerce 2.3.7 terbaharu, "woocommerce_add"_order_item_item_item cangkuk telah ditandakan sebagai tidak digunakan lagi. Artikel ini bertujuan untuk membimbing pembangun memilih cangkuk alternatif untuk menambahkan meta tersuai dengan lancar untuk memesan item.
Cangkuk Pengganti: woocommerce_checkout_create_order_line_item
Cangkuk pengganti yang disyorkan untuk menambah tersuai meta untuk memesan item dalam WooCommerce 3 dan lebih baru ialah "woocommerce_checkout_create_order_line_item." Cangkuk ini menawarkan kefungsian yang serupa dengan cangkuk yang tidak digunakan dan mempunyai hujah berikut:
Menggunakan Cangkuk Baharu
Untuk menggunakan cangkuk "woocommerce_checkout_create_order_line_item", anda boleh menentukan fungsi tersuai seperti contoh di bawah:
<code class="php">add_action( 'woocommerce_checkout_create_order_line_item', 'custom_checkout_create_order_line_item', 20, 4 ); function custom_checkout_create_order_line_item( $item, $cart_item_key, $values, $order ) { // Get custom data and update order item meta $custom_data = get_cart_item_meta( $cart_item_key, 'meta_key' ); if ( ! empty( $custom_data ) ) { $item->update_meta_data( 'meta_key', $custom_data ); } }</code>
Fungsi ini mendapatkan semula nilai meta tersuai daripada item troli dan mengemas kini meta item pesanan yang sepadan menggunakan kaedah update_meta_data() kelas WC_Order_Item_Product.
Kelebihan Menggunakan Cangkuk Baharu
Cangkuk "woocommerce_checkout_create_order_line_item" memberikan beberapa kelebihan:
Nota: Walaupun cangkuk "woocommerce_add_order_item_meta" masih berfungsi, adalah disyorkan untuk berhijrah ke cangkuk "woocommerce_checkout_create_order_line_item" untuk keserasian masa hadapan dan kecekapan kod yang dipertingkatkan.
Atas ialah kandungan terperinci Bagaimana untuk Menggantikan Cangkuk 'woocommerce_add_order_item_meta' yang Dihentikan untuk Meta Tersuai pada Item Pesanan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!