Heim > Fragen und Antworten > Hauptteil
Ich möchte den Bestand von zwei oder mehr Produkten auf Basis von WooCommerce zusammenführen SKU
.
Beispiel: (Zwei Produkte mit demselben Lagerbestand)
(Drei oder mehr Produkte teilen sich den gleichen Bestand)
Die meisten unserer Handyhüllen bestehen aus durchsichtigem Material, daher wollte ich, dass diese Produkte denselben Bestand haben.
P粉7446912052024-04-06 00:25:13
在网上找到了一些东西,内容是这样的:
// Get the order object $order = wc_get_order($order_id); // Loop through order items foreach ($order->get_items() as $item_id => $item) { $product = $item->get_product(); $product_sku = $product->get_sku(); // Define your SKU mappings $sku_mapping = array( 'sku1' => array('sku2'), 'sku3' => array('sku4', 'sku5'), 'sku6' => array('sku7', 'sku8', 'sku9'), ); // Check if the product SKU exists in the mapping if (isset($sku_mapping[$product_sku])) { $linked_skus = $sku_mapping[$product_sku]; // Update the stock quantities for linked products foreach ($linked_skus as $linked_sku) { $linked_product = wc_get_product_id_by_sku($linked_sku); if ($linked_product) { $linked_stock_quantity = get_post_meta($linked_product, '_stock', true); $updated_stock_quantity = $linked_stock_quantity - $item->get_quantity(); update_post_meta($linked_product, '_stock', $updated_stock_quantity); } } } } } add_action('woocommerce_new_order', 'custom_sync_stock_on_order'); add_action('woocommerce_order_status_processing', 'custom_sync_stock_on_order');
唯一的问题是,当订购了 sku1 的产品时,它会更新 sku1 和 sku2 的库存数量,但如果订购了 sku2,则不会。另外,当我使用更新按钮时(我从 此处)它不会更新两者,只会更新我正在更新的产品。