我是woocommerce的新手,所以我需要你幫忙找出我最近3天想解決的問題。總之,我在5個地方有一家披薩店。每個地點都有最低訂單。在結帳時,我根據它自定義的城市選擇選項字段將被接受或拒絕。我正在使用結帳管理器。它真的很混亂。 所以我的問題是我該如何做到這一點,並實現這一結果。我不想硬編碼一切,因爲在將來的位置可能會改變。WooCommerce結賬最小訂單基於城市
針對此問題的任何解決方案。提前致謝。
我是woocommerce的新手,所以我需要你幫忙找出我最近3天想解決的問題。總之,我在5個地方有一家披薩店。每個地點都有最低訂單。在結帳時,我根據它自定義的城市選擇選項字段將被接受或拒絕。我正在使用結帳管理器。它真的很混亂。 所以我的問題是我該如何做到這一點,並實現這一結果。我不想硬編碼一切,因爲在將來的位置可能會改變。WooCommerce結賬最小訂單基於城市
針對此問題的任何解決方案。提前致謝。
function check_min_order($order_id) {
global $woocommerce;
$order = new WC_Order($order_id);
$total = $order->calculate_totals();
if (!$total > 'YOUR MINIMUM AMOUNT HERE') {
wc_add_notice('You did not meet the minimum order total.', 'error');
exit;
}
}
add_action('woocommerce_checkout_order_processed', 'check_min_order', 1, 1 );
添加到您的functions.php
我有可能使用了錯誤的命令$總變量被設置。但是這應該給你一個關於如何實現這個目標的總體思路。它會中斷訂單流程並檢查總額,看它是否符合您的最低金額。您可以在表單字段中爲每個案例創建一系列if語句或switch語句。無論該城市的請求對象的名稱是什麼,您都可以使用$_REQUEST['your_city_field_name']
來獲取該值。
如果符合條件,則會返回woocommerce格式錯誤並停止處理事務。如果不是,它將繼續正常。 「
謝謝。我會盡力做到這一點。 –
_」我不想硬編碼一切,因爲在將來的位置可能會改變。「 - - 然後將它們存儲在數據庫中,而不是... – CBroe
還有另一個原因,我不知道很多PHP –