OpenCart 如何讓缺貨商品無法加入購物車

介紹opencart內建的缺貨結帳機制,並介紹當商品缺貨時不允許加入購物車的擴充模組,以及購買這類模組應該要注意的細節。

OpenCart 系統對於缺貨商品的控管,有一組關於商品缺貨時,能否進行結帳的設定,由於有些商家允許客戶預購,所以必須讓商品缺貨時也能結帳,但有些商家則不開放預購,所以必須在庫存不足時,限制客戶無法結帳,這時網頁會被導向購物車頁面,並出現不允許缺貨結帳的警告訊息。

缺貨就不允許加入購物車

OpenCart 內建的功能,即使設定了不開放缺貨結帳,仍不能阻止買家將缺貨的商品加入購物車,而只是在客戶點擊結帳時,才檢查購買商品是否有缺貨的情形,如果庫存不足,就會將客戶導向購物車頁面,並出現不允許缺貨結帳的警告訊息。

這對買家而言,並不是很好的流程,因為當買家花了時間,精心挑選好想要的商品,並為免運或折扣計算好了消費合計金額,結果要進行結帳時,才告知有缺貨的品項,買家必須自行移除缺貨的商品,並回頭重新選購替代商品,及重新計算消費合計金額,這的確對於客戶的購物體驗有所傷害,必較理想的程序應該是當商品缺貨時,就不能加入購物車。

有另一種做法是如果商品缺貨,就不要出現在前台讓買家看到,Journal 3 就有額外支援這項功能,如果這樣的做法能夠滿足你的需求,那你可以直接啟用 Journal 3 的這項設定。

但是我也遇過,有些商家希望即使商品缺貨,也要出現在前台,一來讓買家知道這邊有販售這項商品,只是目前剛好缺貨,第二是擔心如果缺貨就不顯示商品,會不會對 SEO 造成負面的影響,所以這類商家想要的是,要在前台仍能出現缺貨的商品,但是將購物車設計成無法點擊,讓買家無法將商品加入購物車。

購買數大於庫存數的檢查

前面提到的若遇缺貨商品就不允許點擊加入購物車,這種模組在 OpenCart MarketPlace 可以買得到,但是請先別下手。

上面提到的這種模組,有一個缺點,就是當商品有庫存時,他就不會 Disable 加入購物車的功能,可是有一種情形也會發生庫存不足,就是當買家要購買的數量大於庫存數時,庫存數 1,但買家要加 2 件到購物車,其實也會發生庫存數不足,而這種情形,上面提到的模組,就無法發揮他的防治功能,仍會讓買家到了進行結帳時,才會發現有某些商品的庫存數小於購買數量,一樣會發生購物體驗不佳的情形。

所以比較理想的功能,應該是在買家輸入數量並點擊加入購物車的時候,檢查買家所加入購物車的數量,是否有大於實際庫存數,若是庫存數小於購買數量,就出現警示,不允許加入購物車,這類模組可能會比較貴一點點,因為做的事情更複雜,但是能提供更好的購物體驗,是比較推薦的選擇。