昨晚突然有一個急案,業主表示網站瀏覽正常,就是登入不了。詢問了相關細節後測試也是如此,登入後等一段時間會出現 ERR_EMPTY_RESPONSE 或 ERR_TIMED_OUT 的瀏覽器錯誤畫面。 是被駭了嗎?是某個外掛設定錯誤嗎?是前人做了什麼手腳嗎?都不知道的情況下與都檢測過、詢問一輪後,先把 …
分類彙整: WordPress
[WordPress] 客製化內容類型 Custom Post Type 新增分類功能
之前寫過新增可排序的後台欄位 Admin Column 的運用, [WordPress] 客製化內容類型中設定可排序欄位(Sortable columns) 這就是把原本的欄位補上可排序的功能。但如果內建的欄位不見了,想補上怎麼辦? 圖中這個分類顯示功能很常見,但如果今天碰到沒開啟的話,可以在子主題 …
[WooCommerce] 接收商品無庫存通知的 No Stock Hook
先前寫過 [WordPress] FastCGI 快取網站加速,Nginx Helper 特別加強版本 這篇裡的外掛 Nginx FastCGI Cache 清除小幫手 ,這幾天碰到一個快取邏輯問題。 如果商品無庫存了,也要把商品頁面快取清除,避免看得到有庫存的顯示,等下單後才通知沒庫存。 這件事就 …
[WordPress] 禁止含有空白字元的使用者名稱註冊
WordPress 登入的時候會提示輸入「使用者名稱」和「密碼」,而這個「使用者名稱」其實也可以是「信箱」,很方便但也很容易讓久未登入的用戶忘記當初怎麼登入的。 所以滿多時候會刻意的把「使用者名稱」直接改成「帳號」或是「信箱」字眼來提示。這比起讓客戶端回想「使用者名稱」更直覺與不會搞混。 畢竟看到「 …
[WordPress] WP Rocket 開放其他使用者角色使用清除快取功能
WP Rocket 這款快取加速外掛真的不錯,設定簡單又有效! 網站自己用的話可能沒感覺,要清就點一點清除快取的功能就好。 但如果今天網站上分了好多角色,都希望他們編輯內容後可以自己清除的話要如何處理? function mxp_accept_cap_to_use_rocket($cap) { re …
[WordPress] 如何清理被駭後的 WordPress 網站
Facebook 上看到社友 Tonny 分享的這篇 How to Clean a Hacked WordPress Site。這主題大到讓人不想寫,真的能寫且又有效益的就屬資安公司了XD 撇開 Sucuri 業配自家的內容不說,雖然總結還是「找他們」,但本篇也算是認真分享做內容了。 對比我的手動操 …
[WordPress] posts_per_page 參數與主題 Template 關係上的雷
有碰過點擊分類列表文章最後一頁會顯示 404 Not Found 找不到文章的錯誤嗎? 恩,我查英文資料都很少了,估計中文使用者會碰到的機會更低XD 前端同事實作過程跟我反應這問題的時候,第一時間還以為是 Pagination 分頁問題。 開了 Query Monitor 查看 Rewrite 也正 …
[WooCommerce] 開通消費者端取消訂單功能的方法
時常發現消費者下單後反悔或是下錯單的時候,都會透過聯絡功能來信表示希望取消某筆訂單。 這樣的操作如果覺得麻煩,希望把功能開放給消費者的話可以將下方程式置入(子)主題 functions.php 中使用,或是安裝 WC Cancel Order 外掛來處理。 function mxp_wc_order …
[WordPress] 開發 Hook 呼叫方法時避免無窮迴圈(Infinite Recursion)的方法
程式撰寫不怕寫錯語法,怕邏輯不正確。寫錯還有解譯器跳出錯誤提示訊息,但邏輯錯造成的問題就比較難解了! 尤其是把程式寫成無窮迴圈,執行時會在一瞬間把系統資源吃光,導致執行錯誤。 WordPress 中模組化了很多東西,從 Actions, Filters 的基礎 Hook 方法到 Shortcode …
閱讀全文〈[WordPress] 開發 Hook 呼叫方法時避免無窮迴圈(Infinite Recursion)的方法〉
[WooCommerce] 取出所有可變商品的雷 – get_available_variations 方法解析
Basel 這款主題作為購物車主題用不錯,它還有包裝一個陳列商品圖片的功能在 WooCommerce 可變商品(Variation),如下圖: 不過,客戶上傳的商品的圖片時不時會在訂單下完「庫存為空」時被清空,非常詭異。 經追查,發現主題中使用 WooCommerce get_available_v …
閱讀全文〈[WooCommerce] 取出所有可變商品的雷 – get_available_variations 方法解析〉
