WooCommerce 訂單通知信重複顯示內容

近期在串接金流時為了要將 ATM 的虛擬帳號可以寄送給顧客,因此使用勾點 woocommerce_email_order_meta 將帳號資訊寫入,結果不知道為何管理員跟顧客收到的第一封信,輸出的內容都會多重複一筆:

由於我是把勾點放在 Payment Gateway 的類別裡面執行,不知道是不是哪邊重複呼叫到還是有其他原因,最後我的解法是用 CSS 把第二個轉帳資訊的地方隱藏,但更詭異的是當我寫了 <style> 後第二個 div 就沒出現了…

add_action(
	'woocommerce_email_order_meta',
	function() {
		$html = '
		  <style>.account-info+.account-info{display:none}</style>
		  <div style="margin-bottom:40px" class="account-info">
			<h2 class="woocommerce-order-details__title">轉帳資訊</h2>
		  </div>
  		';
		echo $html;
	}
)

後來小程跟我說官方文件有提醒不要把勾點放在 Payment Gateway 的類別來執行,不然很有可能不會觸發到,文件翻譯如下:「在 Gateway 類別內部加入勾點可能不會觸發。Gateway 只會在需要時載入,例如在結帳過程以及在設定頁面內。如果您需要從類別中加入 WordPress 事件,應將勾點放在類別之外或使用 WC-API。」

目錄

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料

賴俊吾 / Oberon Lai
賴俊吾 / Oberon Lai

現為全職 WordPress 工程師,網站開發經歷 11 年,專攻前端工程與 WordPress 佈景主題、外掛客製化開發

訂閱電子報

Hi,我是 Oberon,我會固定在每週五早上發送接案心得以及與 WordPress 相關的電子報,同時也會分享一些實用的開發知識,讓你在 WordPress 的接案路上不孤單!

專注於分享 WordPress 開發、接案技巧、專案管理等自由工作者必備知識與心得

© 2024 想點創意科技有限公司

想點創意科技有限公司 | 統一編號 90516823
Designed by Hend Design | 隱私權政策

訂閱電子報

Hi,我是 Oberon,我會固定在每週五早上發送接案心得以及與 WordPress 相關的電子報,同時也會分享一些實用的開發知識,讓你在 WordPress 的接案路上不孤單!