時常發現消費者下單後反悔或是下錯單的時候,都會透過聯絡功能來信表示希望取消某筆訂單。 這樣的操作如果覺得麻煩,希望把功能開放給消費者的話可以將下方程式置入(子)主題 functions.php 中使用,或是安裝 WC Cancel Order 外掛來處理。 function mxp_wc_order …
[WordPress] 開發 Hook 呼叫方法時避免無窮迴圈(Infinite Recursion)的方法
程式撰寫不怕寫錯語法,怕邏輯不正確。寫錯還有解譯器跳出錯誤提示訊息,但邏輯錯造成的問題就比較難解了! 尤其是把程式寫成無窮迴圈,執行時會在一瞬間把系統資源吃光,導致執行錯誤。 WordPress 中模組化了很多東西,從 Actions, Filters 的基礎 Hook 方法到 Shortcode …
閱讀全文〈[WordPress] 開發 Hook 呼叫方法時避免無窮迴圈(Infinite Recursion)的方法〉
[PHP] 舊專案、新環境的「向上相容」技術
最近在處理客戶 2010 年非常舊的純客製化網站專案,準備轉換成 WordPress 架構。環境為 CentOS 5.5、PHP 5.1.6、Apache/2.2.3、MySQL 5.0.77 原以為資料儲存會用 UTF8 ,結果居然是 latin1 ,這篇還提不到這邊的處理。 面對年代已經久遠的系 …
[PHP] 開發除錯方法:取得函數 Function 呼叫的堆疊資訊 Call Stack
有些環境預設下 PHP 運行出錯時會把方法從哪裡開始呼叫到哪裡出錯的整段資訊印出來,開發人員對照這資訊就很容易進行除錯。 這種除錯的好方法不一定要等到寫錯的情況才可以用。追查系統運作邏輯也可以!查找你寫的或別人寫的方法從哪裡開始發起呼叫到結束,如此去釐清問題。 debug_print_backtra …
[WooCommerce] 取出所有可變商品的雷 – get_available_variations 方法解析
Basel 這款主題作為購物車主題用不錯,它還有包裝一個陳列商品圖片的功能在 WooCommerce 可變商品(Variation),如下圖: 不過,客戶上傳的商品的圖片時不時會在訂單下完「庫存為空」時被清空,非常詭異。 經追查,發現主題中使用 WooCommerce get_available_v …
閱讀全文〈[WooCommerce] 取出所有可變商品的雷 – get_available_variations 方法解析〉
[WooCommerce] 內建實作定時定期的功能: Action Scheduler
前篇 [WooCommerce] 使用 WP Cron 方法提醒未付款訂單記得付款 筆記, Richer 留言分享了 WooCommerce 有自己的內建 Cronjob 機制可以切入相關定時定期服務。 Action Scheduler 此功能也很強大,且物件導向設計實作,可以當作一個獨立外掛來安裝 …
[WooCommerce] 使用 WP Cron 方法提醒未付款訂單記得付款
實作方式不難,就是紀錄一下方法!市面上比較常出現的需求是「abandoned cart」,追還在購物車裡沒完成下單的追下單功能。 本篇是用在客製化通知追訂單付款。 WooCommerce 有人下單後 如有開啟庫存管理會導致商品數量被綁住,所以通常會有一個付款期限,透過取消訂單來恢復庫存,免得有人想下 …
[WordPress] 標準外部請求辦不到時使用 cURL 的 Hack 方式
在 WordPress 框架開發時應該要盡量符合標準,而這標準都有文件寫在「主題」和「外掛」。 本篇不鼓勵使用此方法來開發!下方描述的功能經 Richer 的分享可以使用內建方法達成:利用 WordPess 內建的功能來追蹤轉址紀錄 (大感謝!!) 內容目錄1 不照標準可不可以?2 但凡事總有例外3 …
[WordPress] 詳解定時定期運作的服務: WP-Cron
定時定期執行這技術或者說是設計在 WordPress 裡面扮演重要的隱藏角色之一! 這件事要知道它的重要性可以先聯想「手錶」或其他可以看時間的工具。你會看手錶或手機來注意時間,正是因為你有些事需要等待時間到了後才能做,像是:訂春節返鄉高鐵票、搶演唱會門票、跟朋友約吃飯或追某個八點檔等等。 WordP …
[WooCommerce] 關閉 v4.0.0 後出現的 Admin 管理控制台工具
WooCommerce v4.0 是近期重大的更新,更新需要注意主題還有其他外掛是否有影響。 最明顯的變化是之前在 v3.9 試驗的「Admin 控制台」工具,也在 v4.0 後整合變成內建功能。 裡面把原「報表」功能再整理過設計來呈現。十分雞肋XD 也因為這樣 WooCommerce 變得肥厚不少 …