有沒有人有(或知道)一個PHP代碼片段的解決方案,以增加自動化,例如一個復選框,以增加報價串列中的庫存,或在訂單頁面中帶回原來的增加庫存按鈕;在發送報價之前?
我已經找了很多天,也找了很多小時的代碼解決方案或插件=> 沒有。
我相信WooCommerce曾經在訂單頁面有這個按鈕,但現在沒有了,我在Woo5.6.0,WP5.8和PHP7.4上
。提前感謝。
uj5u.com熱心網友回復:
所以......在我再次重新發布我的問題并減少它以簡化和增加重點之后,我認為一個機器人的回應關閉了我的原始問題。
我看了看出現的建議,"你相信嗎?"下面的帖子就在建議串列中。
我不得不進行測驗,并對代碼的呼叫進行了一些修改,以適應我的商店模式。
我現在有了一個安全的作業方法,即只針對報價單中的庫存,并且在我發出報價時,只按報價單的金額(數量)提升庫存。
這樣做的唯一缺點是,如果另一個客戶出現并看到庫存中的傭金,他們可以把它放在他們的籃子里,然后它將不符合最初發出的報價。
"代碼開發的另一個時間,找到一種方法來保留該提升和分配的股票"。
"代碼開發的另一個時間,找到一種方法來保留該提升和分配的股票"。我是在思考了如何只對已發送的報價觸發一個動作后才這樣做的。
因此,我對 Yiths Request a quote 代碼進行了深入研究,以找到它改變 WooCommerce 訂單狀態的類,并得出了這個結果。
感謝@loictheaztec,他負責這個靈感的產生。
// Increase stock on pending quote order status - An experiment "ywraq-pending"/span>
add_action( 'woocommerce_order_status_ywraq-pending', 'action_on_quote_sent' , 10, 1 ) 。
function action_on_quote_sent( $order_id /span>)
{
//獲得一個訂單物件的實體。
$order = wc_get_order( $order_id ) 。
// Iterating though each order items
foreach ( $order->get_items() as $item_id => $item_values ) {
$item_qty = $item_values['qty'/span>]。
//獲得產品ID(簡單和可變產品)
$product_id = $item_values[' variation_id']。
if( $product_id == 0 || empty( $product_id ) ) $product_id = $item_values['product_id']。
//獲取產品物件的實體
$product = wc_get_product( $product_id ) 。
//獲取產品的庫存數量。
$product_stock = $product->get_stock_quantity() 。
//增加回來的庫存數量。
wc_update_product_stock( $product, $item_qty, '增加' ) 。
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/320727.html
標籤:
