Perlukan bantuan mengemas kini inventori produk saya di halaman urus pesanan WooCommerce. Pada masa ini saya mempunyai beberapa kod yang berfungsi, tetapi ia mengalih keluar inventori daripada produk yang salah. Adakah sesiapa tahu mengapa?
add_action( 'woocommerce_after_order_itemmeta', 'action_woocommerce_order_item_add_button', 10, 2); function action_woocommerce_order_item_add_button($item_id, $item) { $product = $item->get_product(); $id = $item->get_product_id(); echo ''; } add_action('save_post', 'renew_save_again', 10, 3); function renew_save_again($post_id, $post, $update){ $slug = 'shop_order'; if(is_admin()){ // If this isn't a 'woocommercer order' post, don't update it. if ( $slug != $post->post_type ) { return; } if(isset($_POST['renew_order_single_product']) && $_POST['renew_order_single_product']){ //removes stock for specified product global $woocommerce; $quantity = 0; $product_id = $_POST['renew_order_single_product']; $woocmmerce_instance = new WC_Product($product_id); $new_quantity=wc_update_product_stock( $woocmmerce_instance, $quantity); } } }
Masalahnya ialah, anda menambah butang dan kotak input selepas setiap item pesanan, jadi anda mempunyai berbilang kotak input tersembunyi dengan nama yang sama, ia sama ada mendapat kotak input tersembunyi pertama atau yang terakhir, dan ini Itulah kemas kini, anda perlu menukar logik anda dan hanya menambah kotak input tersembunyi dan menukar nilai kotak input tersembunyi pada butang klik dan kemudian menyerahkan borang.