我正在致力於爲其他一些德國開發人員構建的woocommerce創建的主題。我創建了我的子主題,並使用子主題的functions.php來更改網站的功能。從電子郵件通知模板中刪除客戶詳細信息和地址
當客戶訂購產品時,他會收到一封電子郵件,其中包含訂單表,客戶信息和賬單地址以及客戶送貨。 我想刪除表格下方的所有內容並添加我自己的文本(客戶信息+結算,運輸和取件地址)。
我已將自己的文本添加到發送給客戶的電子郵件中的訂單表下方,但是我無法刪除默認情況下在我的自定義添加文本下方顯示的信息。我發現鉤子負責提取和顯示數據是woocommerce_email_order_meta
,但我不知道如何刪除它或阻止它執行。我不想在模板文件中進行更改,我想通過掛鉤來完成。
到目前爲止,我已經嘗試做這樣的:
remove_action('woocommerce_email_order_meta', $order, $sent_to_admin, $plain_text, $email);
我跟着鏈接:Delete order info section from email template in woocommerce和嘗試下面的代碼爲好,但沒有奏效。
function so_39251827_remove_order_details($order, $sent_to_admin, $plain_text, $email){
$mailer = WC()->mailer(); // get the instance of the WC_Emails class
remove_action('woocommerce_email_order_details', array($mailer, 'order_details'), 10, 4);
}
add_action('woocommerce_email_order_details', 'so_39251827_remove_order_details', 5, 4);
我該如何做到這一點?
感謝
哇!它正在工作!非常感謝你!願上帝保佑你! – Yogie
LoicTheAztec再次感謝您的幫助,我可以成功完成該項目。但現在我想學習,你是如何達到這個目標的?你究竟做了什麼研究?你是怎麼知道它是'woocommerce_email_customer_details'鉤子而不是'woocommerce_email_order_meta'?然後你怎麼找到'array($ mailer,'customer_details')'參數?你是怎麼找到'WC() - > mailer()'做的? 請建議,我可以在哪裏學習所有這些在門外術語,我是非常新的woocommerce。謝謝!! – Yogie