[PHP] NetSuite SuiteScript 中請求 RESTlet API 使用的 OAuth 1.0a 方法

因工作需求,需要寫到 Oracle ERP NetSuite 的程式。這套的強大,從他也支援的開發串接方式就可以知道。 不過在用 PHP 實作串接 OAuth 1.0a 以及驗證方法更新到 SHA256 的開源工具… 沒有啊~ 於是就是找到一套彈性的其他語言(NodeJS)寫的工具來改寫成 PH …

[PHP] 使用 DOMDocument 方法碰到的 UTF-8 字元解析問題

操作網頁中修改 HTML 元素屬性的需求時,從單純字元取代到正規表達式(Regex)找字串取代到最後是使用 DOMDocument 方法來找元素操作都可以。 不過除了 DOMDocument 方法,其他方式都有機會把網頁 HTML 結構破壞掉,所以我大多都會採取 DOMDocument 方法來處理。 …

[WordPress] 登入後轉址回登入前頁面的功能,以 WooCommerce 結帳需先登入功能為例

其實這需求也不止碰過一次,也算是常見的使用者體驗設計。讓沒登入的使用者不會在登入後就突然間斷掉原本的瀏覽動線。 設計上也不難,但不知道為啥如果找這相關的外掛,大多都是特殊用法,像是執行完某件事後的轉址等。 還沒有看到就是純粹解決登入後轉址回登入前頁面的功能。

[WordPress] 使用 PHP 陣列批次建立網站巢狀分類資料

客戶整理了一大張產品的分類表,滿滿的階層結構就算了,資料量也不小。 如果要手動建立也是要花不少時間,想把這些資料整理成一個巢狀的階層陣列來匯入。 結果圖如下: 使用的陣列如下: $categories = [ [ 'Category 1' => [ 'Subcat …

[WordPress] 本機開發環境神器 – DDEV!

DDEV 真的要說是神器,不誇張。 Docker-based local PHP+Node.js web development environments 看說明就是一套使用 Docker 容器技術,且以 PHP + Node.js 為主要開發環境為導向設計的工具。 但! 這套工具把 WordPre …

[OpenAI] 使用 PHP 搭配 Embeddings 開發個人化 AI 問答機器人 – YourGPT

OpenAI 最有名的產品絕對是「ChatGPT」,原本說想說他的付費版(Plus)只有使用優先權沒啥吸引力,後來 GPT-4 只有 Plus 能用,整個賣爆,好會XD 有這種強大的工具出現後,相信不少人應該對「做出自己的 ChatGPT」很感興趣,我也是。 先前在粉絲頁上分享過自己實作的結果。把粉 …

[PHP] 判斷字串中包含中文、日文、韓文、或泰文等各國語言文字的方法

這需求真是時不時會碰到,在問 ChatGPT 的時候,他直接寫一個範例: function containsThai($str) { return preg_match('/\p{Thai}+/u', $str); } // 測試 if (containsThai("ส …

[PHP] Zip 壓縮、解壓縮的技術實作選擇

前陣子剛好在給我的 WordPress 開發工具箱 外掛整頓一下補新功能。其中就有寫到「打包」的功能,目的是以防準備接手或是協助調查的網站沒給 FTP/SFTP 等檔案存取權限,有這功能就可以直接針對主題或是外掛點選「打包」功能壓縮後下載回本機查看。 當時也沒多想,直接就是運用了 ZipArchiv …

[VPS] PHP 網站應用程式防火牆 WAF 實作筆記

先前筆記的 [VPS] WordPress 網站主機群防護升級的作法 、 [Nginx] 阻擋惡意請求來源(User-Agent)的方法 與 [Fail2ban] 同步 Cloudflare WAF 防火牆封鎖 IP 清單的方法 這三篇,主要都是在實作第一版 PHP WAF 網站應用程式防火牆的筆記 …

[PHP] 建立 Zip 樣板(Template)壓縮檔案提供下載的方法

標題感覺籠統,實際上這種使用案例還滿常見,像是 WordPress 有些子主題產生站,只要輸入想要的子主題名字,他就會自動生成一個主題檔案,並提供下載一個「子主題.zip」這樣的功能。 類似的應用不少,概念上就是前端讓人輸入一些變數的值,後端收到後將這些變數帶入系統運作的邏輯中,將數個檔案寫入 Zi …

文章
Filter
Apply Filters
Mastodon