內建訂單如果在介面操作下改訂單狀態會觸發一系列對應的操作。像是取消訂單會發信通知管理員,然後把庫存補回商品等等的系統行為。 但如果是被程式化方式給改了狀態,後續有事件需要被連動觸發該怎麼處理? 今天的案例是使用外掛 WooCommerce Cancel Abandoned Order 檢查訂單狀態是 …
標籤彙整: PHP
[WooCommerce] PHP 動態建立或更新商品的方法
這個方法其實也滿多人討論的,主要是看用在哪,主要有兩派。一個是透過 REST API 的呼叫來建立,另一個是直接針對資料庫操作。 標題說的「建立或更新」是比較通泛的寫,但我的需求是「建立不然就是更新」商品。這時候 REST API 的方法就不適用了! // 商品資料結構 $product_data …
[PHP] 查看 PHP 檔案,程式碼語法 highlight
PHP 這個highlight_file方法來查看 PHP 檔案,真的不錯XD 唸起來有點繞口,但如果使用 PHP 寫程式的過程中需要展示某個 PHP 檔案可以不用擔心要處理樣式問題。 #技術相關 #PHP #highlight
[VPS] PHP 網站資訊安全之 .user.ini 檔案與 open_basedir 參數
網站能不能保證不會被 Hack ?這點實在是很難。 但是網站被 Hack 的有限,卻是很基本的設定,而很多人可能不知道。 PHP 5.3 版之後加入了一個「以資料夾為設定單位基礎的設定方式」叫做 .user.ini (預設檔案名稱) 這個檔案可以為這個資料夾下的 PHP 程式檔案圈出一個「執行範圍( …
[PHP] 寫出一個匯出 CSV 檔案的起手式
這篇,就是一個「如果你要寫一個匯出 CSV 檔案下載」程式的人可以照這框架走的範本。廢話不多說,都寫在程式碼裡的註解了! 要注意的是,下面的程式碼非完整可以直接照套的,還有需要自行客製化的部分!需要點程式技巧來使用。
[PHP] 產生碰撞(collision)機率低的短亂碼
這主題看似容易其實很有深度。從為甚麼要有這個「亂碼」開始,就是希望可以在做某件事的時候讓「重複」(碰撞)的機率減低,而最好的狀況就是不存在碰撞。 寫程式的人可能多少都用過「隨機」函數,但其實這方法並不是真的隨機,沒有想像中那般真的無法預測,也無法單靠它來避免碰撞。 不過有些變形的操作倒是能「盡量」避 …
[PHP] 快速開發 PHP extension 延伸外掛模組工具框架: PHP-CPP
前言 這東西神到一個沒話說! 絕對是現在開發 PHP extension (延伸外掛模組),最好用的辦法!沒有之一。 會用到它的緣由主要是手邊正在開發一個網站端工具,Github 上面也找得到部分原始碼,不過因為是採用 C 語言撰寫,所以就花了點時間 porting PHP 版本。 問題來了,一樣的 …
[FB2WP] Facebook 粉絲頁留言同步網站功能更新細節
這功能最大功臣還是要歸 WordPress 自身提供的方法: url_to_postid 透過 API 反解出留言發文本身帶的文章連結還不打緊,要怎麼對應網站中文章才是問題! 透過這個內建方法,可以去幫我解析出原本發文的文章編號,有編號好辦事~ 而且這次又貼心又賭爛(都不說有改版)的 Webhook …
[WooCommerce] 根據商品分類判斷購物車商品去留的方法
這是過年期間解決的一個問題,覺得也滿有意思的! 情境 一個購物網站,不只有賣實體商品,還包含非實體的課程商品。 問題 課程商品下單勢必不能加上運費,但如果同時跟實體商品一起購買的話會發生跟著免運的情況XD 解決辦法 思路有兩種: 運費個別分攤在每樣商品,再透過計算商品的運費級距來完成組合運費的架構( …
[MAMP] 更新切換 PHP 版本的方法,測試你程式相容性
MAMP 是我電腦上安裝的 PHP 開發環境工具,使用原因無他,簡單、方便。 而且對於進階玩家來說,就算要自己編譯過 extensions 或是測試 PHP 新版本也都沒問題~ 當然不免的說,如果有問題,那要找到問題解答也容易,因為用的人也不少! 本人無偏好某款太 GEEK 的開發環境,重點是團隊成 …