內容目錄
歡迎回到鵠學苑 — WordPress 網頁設計超詳細攻略 – WooCommerce 購物車設定 是可以透過加入 php 函數的方式,來變更顧客在結帳時可觸發的事件,尤其在 WooCommerce 本身沒有提供更多選項來自訂網站銷售條件的狀況下,以函數改變或者客製化交易規則是一個不錯的辦法。
在本篇教學中,將會說明如何在網站子主題中加入自訂函數,當顧客購買的訂單金額符合我們的期望值時,自動加入另一項商品至購物車中,而這個函數的功能在實務上常應用在 ” 滿額贈禮 ” ,如果説搭配折價卷功能,也可以讓額外商品做折價,整題來說,就是能讓商店行銷手法變得更加靈活自由。接下來跟著鵠學苑的腳步,讓我們開始學習吧!
PHP 手冊 if 條件式迴圈顯示或執行給定植
https://www.php.net/manual/zh/control-structures.if.php
PHP 手冊 foreach 迴圈流程控制
https://www.php.net/manual/zh/control-structures.foreach.php
WordPress Codex 函數參考
https://developer.wordpress.org/reference/functions/add_action/
WordPress Child Theme 開發人員說明
https://developer.wordpress.org/themes/advanced-topics/child-themes/
注意事項:適用 WordPress 5.0 ( Beta )或以上版本
第一步:使用 add_action 來設定函數啟動前提:當 add_product_to_cart 與 template_redirect 重定向同時發生時,將會執行 if 條件式的陣列迴圈,在最外層陣列的 if 中必須先定義變數所代表的值,也就是給定 $product_id、$cart_total = 50 這兩個設定值,而 $found = false 是預先定義 if 迴圈,每一次執行是都將初始化比對購物車總金額的動作,而中層及內層的 if 陣列則是在定義購物車新增傷商品條件式,如果購物車數量大於 0 時,將會比對購物車金額的數值,以下方範例而言,當條件成立時時將會自動將指定 id 的商品加入到購物車中,也就是說,當購物車金額到達 50 元或以上時,將自動加入商品 id 為 50 的商品至購物車中。
第二步:將函數加入 your-child-theme/function.php 內,紅字的部分是網站所使用的子主題名稱,在主題編輯器中選擇網站子主題,目錄中點選 funtion.php 檔案,將函數加入編輯畫面結尾處,如下圖所示。
第三步:下方為函數執行後的結果示意圖。
最後做個小提醒,在變更商品 id 及金額限制的數值時,以英文鍵盤輸入數字在更新 funtion.php 文件時,才不會發生錯誤,如果使用複製貼上的方式,會將文書軟體中一些看不到的字元格式也一併貼上,在更新時就容易導致錯誤。
今天的教學到這裡告一段落了,不要忘記在右側訂閱鵠學苑電子報,確保收到最新 WordPress 教學文章,如果有網頁設計相關需求,或者想了解最新網站知識,也可以到 鵠崙設計 做線上免費諮詢喔!我們下次的教學見~
Chrome 76 版更新項目介紹,破解網址隱藏 WWW 與子網域名稱
SEO到底追不追的完?文章怎麼寫!
購物網站架設 – 電子商務網站建置的細節與項目