
重點整理
WooCommerce 沒有內建「最低消費金額」選項,可以在子主題的 functions.php 加入函數:掛在購物車與結帳流程,總金額低於 $minimum 時用 wc_print_notice 顯示提示並無法完成結帳。設定前也可以考慮用滿額免運等方式取代,避免嚇跑小額顧客。
WooCommerce 結帳設定 在預設外掛設定中並沒有太多選項可以來客製化結帳流程,尤其像是限制結帳金額這樣定制購買條件的需求,因此加入 funtion 就是許多電商站長用以解決難題的選擇之一。在本篇教學中將說明如何在 WordPress 子主題中加入 WooCommerce 函數,只需修改 $minimum 的數值,就能達到限制顧客最低結帳金額的效果,讓網站能更靈活運作不同的銷售策略。
注意事項:適用 WordPress 5.0 ( Beta )或以上版本
在網站子主題 function.php 模板中加入函數
第一步:將下方提供的函數加入 your-child-theme/function.php 內,在後台外觀選單中的主題編輯器畫面右方的列表中可以找到此檔案,開啟後將下方程式碼中文的位置更換為自己想要的文字內容,點選更新即可。

第二步:簡易說明函數意義:以 add_action 分別定義這一段函數應該要在哪一個位置作用,第一個是 woocommerce_checkout_process ,影響的是結帳流程; 第二個 woocommerce_before_cart ,再加入購物車前就必須先以設定值來判別函數值成立與否,接者以 if 設定函數條件內容,當購物車總金額小於 $minimum 時,將執行 wc_print_notice 在前端顯示提示錯誤文字,也就是下圖中顯示的 ” 您目前訂單總金額為…. ” 這一段提示,來告知顧客購物車金額未達標準,在購物車頁面終究會先予以通知。

第三步:如果顧客依然進入到結帳畫面,只要訂單總金額未達最低數值,就無法完成結帳動作,如下圖所示。

使用區塊版結帳頁時程式碼還有效嗎?
要特別確認。新版 WooCommerce 的購物車與結帳頁預設使用區塊版(Cart/Checkout 區塊),運作方式和傳統短代碼頁面不同:
- 本文使用的
woocommerce_before_cart、woocommerce_checkout_process等 hook,是為傳統購物車與結帳頁設計的,在區塊版頁面上可能不會觸發。 - 檢查方式:編輯結帳頁,看內容是「結帳」區塊,還是
[woocommerce_checkout]短代碼。 - 若使用區塊版,可以把頁面改回短代碼版本,或改用有支援區塊結帳的外掛。
不論哪種,上線前都要用低於門檻的金額實際走一次結帳流程測試。
有沒有比限制最低金額更好的做法?
限制最低消費金額,常會讓只想買一件小東西的顧客直接放棄。可以先思考設定門檻的原因,再選擇影響較小的方式:
- 運費成本太高:改成未滿額收運費、滿額免運,讓顧客自己決定要不要湊單。
- 想提高客單價:提供滿額贈品或滿額折扣,用獎勵代替限制。
- 批發或特定通路:只對特定會員角色設定最低金額,一般顧客不受影響。
真的需要限制時,在商品頁與購物車頁清楚標示門檻,不要讓顧客到結帳最後一步才發現。
常見問題
WooCommerce 可以設定最低消費金額嗎?
WooCommerce 沒有內建最低消費金額選項,可以在子主題的 functions.php 加入函數,在購物車與結帳流程檢查金額,低於設定值就顯示提示並阻止結帳。不想寫程式,也可以用外掛目錄中的最低訂單金額外掛達成。
最低消費金額的程式碼要放在哪裡?
放在子主題的 functions.php,或用 Code Snippets 這類程式碼片段外掛新增。不要直接改父主題的檔案,主題更新時會被覆蓋。修改前先備份網站,貼上後到前台實際加入商品測試,確認提示文字與阻擋結帳都正常。
最低消費金額是用含運費還是不含運費計算?
看程式碼取用哪個金額。常見寫法取用購物車小計或訂單總額,兩者差在是否包含運費與折扣。若想以「商品金額」判斷,應使用購物車小計;提示文字也要寫清楚是商品金額還是含運總額,避免顧客誤會。
結語
限制最低結帳金額其實對台灣的消費者而言是比較少遇到的狀況,畢竟這樣的做法容易讓只有小額購買需求的顧客會放棄購物動作,在使用本次教學的函數前,可以先思考是不是有更好的辦法來做商品銷售策略,比如提高單件商品的運費,或者是提供滿金額免運費的折價卷等,也都是不錯的做法喔!
