WooCommerce Order CRUD

$order->update_meta_data();
$order->save();

這邊的 update_meta_data,可能會有點誤解,實際上 update_meta_data 並沒有牽涉任何資料庫的操作,而是將 order 物件內的資料進行更新,最後還是要呼要 $order->save() 來將資料存到資料庫中

https://woocommerce.com/document/developing-using-woocommerce-crud-objects/

https://woocommerce.com/posts/extending-crud-data-stores/

Turbo Admin – 讓你快速切換後台畫面

如果你是 Mac 使用者可能對 Alfred 這款軟體不陌生,Alfred 是一款 Luncher 類的軟體,他讓你可以快速開啟你要的 App 或是執行指令。而 Turbo Admin 的功用,有點類似 Alfred,他讓你可以快速切換 WordPress 後台介面,過去筆者曾使用過類似的外掛,例如 Jarvis。不過 Turbo Admin 用起來體驗更好了。

安裝 Turbo Admin

安裝好之後,不需要特別設定,預設的快捷鍵如下:
  • Windows: Ctrl-Alt-Shift-P
  • Mac: Cmd-Alt-Shift-P

使用快捷鍵你就可以叫出下面的命令視窗,你可以輸入你要跳到的頁面或選單

修改快捷鍵與啟用其他功能

如果你不習慣預設的快捷鍵,你可以在 [使用者]->[個人資料] 中修改快捷鍵,但要注意不要和其他的瀏覽器快捷鍵衝突。在設定頁面中也有一些其他的功能,你可以嘗試看看。

搜尋文章內容

除了跳到特定選單或頁面外,Turbo Admin 也會搜尋文章內容,不過實際測試搜尋的結果並不是很準確,有機會再看看他是怎麼實作的。

Turbo Admin 瀏覽器外掛

Turbo Admin 的 WordPress 外掛提供了基本的搜尋功能,除此之外開發者也另外提供了瀏覽器擴充,包含了更多的進階功能,而且讓你可以不用安裝 WordPress 外掛,就可以使用 Turbo Admin 的功能,聽起來是不是有點神奇。

免費方案可以在 3 個網站上使用,如果你真的覺得這個瀏覽器擴充對你有幫助,可以用美金 35 元的價格購買授權,來解除三個網站的使用限制,這是一次性的費用,且可以啟用在 6 個瀏覽器上,應該是很夠用。不過日後如果有大幅更新的版本還是需要另外付費。

WordPress 預設 sitemap XML

WordPress 從 5.5 開始內建 sitemap,雖然功能比較陽春,不過如果你不想安裝 SEO 外掛,那麼內建的 sitemap 也還算夠用。

預設的 WordPress sitemap 的路徑為 https://{yoursite.com}/wp-sitemap.xml

從上圖中你可以看到,預設的 sitemap.xml 中包含了文章、頁面、分類和標籤以及使用者的內容。

另外要注意的是,如果你的網站有阻擋搜尋引擎,那麼當你瀏覽 wp-sitemap.xml 這個網址時,就會顯示 404

[WooCommerce] 如何移除付款方式 icon

許多使用的金流外掛都會額外顯示該付款方式的 icon,不過有些外掛並沒有提供關閉的功能。不過還是可以透過 WooCommerce 內建的 filter 來移除 icon。

例如我們想要移除 Ry WooCommerce Tools 的綠界超商代碼付款,可以使用 woocommerce_gateway_icon 這個 filter。這個 filter 有兩個參數,一個是 $icon,是原本 icon 的網址,另一個是 $id,代表著付款方式的 id,每一個付款方式的 id 皆不同。在下面的例子中,判斷當 $id 等於 ry_ecpay_cvs 時,就回傳空字串,這樣就不會顯示付款方式的 icon 了。

function lwd_remove_ecpay_icon( $icon, $id ) {

    if ( $id === 'ry_ecpay_cvs' ){ 
	 return ''; 
    } else { 
        return $icon; 
    } 

} 

add_filter( 'woocommerce_gateway_icon', 'lwd_remove_ecpay_icon', 10, 2 );

至於要如何知道付款方式的 id 呢?首先你可以檢視外掛的原始程式碼,每一個付款方式的實作都必須要指定 id ,這個 id 是不能重複的。你可以在 ry-woocommerce-tools/woocommerce/gateways/ecpay/includes/ecpay-gateway-cvs.php 中找到 $this->id,這個 id 就是該付款方式的 id。

若你不知道如何檢視程式碼,也可以透過瀏覽器的開發者工具來檢視網頁的原始碼。在結帳頁面開啟 chrome 的開發者工具,並使用檢視工具來檢視元件,點擊檢視工具後,點擊你要檢視的付款方式,底下就會跳到該付款方式的原始碼。你可以看到每一個付款方式都會帶有一個 CSS class,例如 payment_method_ry_ecpay_cvs,其中ry_ecpay_cvs 就是該付款方式的 id。

WordPress 如何重新寄送重設密碼信件給顧客

在某些情境下你可能會主動希望使用者重新設定密碼,例如系統有安全性的問題。這時候可以透過 WordPress 內建的重設密碼信件功能來通知使用者。這項功能是在 WordPress 5.7 中加入的。寄送重設密碼信件的方式有三種:

在使用者清單中單獨寄送給特定使用者

在使用者清單中批次寄送

在編輯使用者介面中寄送

參考資料:

綠界金流各付款方式付款期限

綠界金流如果不是即時付款 (超商付款、ATM虛擬帳號付款) 都會有一個付款期限,使用者在這個期限內完成付款都可以。以下說明幾個非即時付款的付款方式的付款期限及 API 設定參數。


超商付款

CVS:以分鐘為單位
BARCODE:以為單位

參數:StoreExpireDate (超商繳費截止時間)

若未設定此參數,CVS 預設為 10080分鐘(7 天);BARCODE 預設為 7 天。
若需設定此參數,請於建立訂單時將此參數送給綠界。

CVS 帶入數值不可超過 86400 分鐘,超過時一律以 86400 分鐘計(60 天)
例:08/01 的 20:15 分購買商品,繳費期限為 7 天,表示 8/08 的 20:15 分前您必須前往超商繳費。

ATM

參數:ExpireDate

若需設定最長 60 天,最短 1 天。未設定此參數則預設為 3 天
注意事項:以為單位

資料來源:綠界