2016-09-28 51 views
2

我正在致力於爲其他一些德國開發人員構建的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); 

我該如何做到這一點?

感謝

回答

6

說明 - 在所有電子郵件通知模板,你有這樣的:

/** 
* @hooked WC_Emails::customer_details() Shows customer details 
* @hooked WC_Emails::email_address() Shows email address 
*/ 
do_action('woocommerce_email_customer_details', $order, $sent_to_admin, $plain_text, $email); 

一些研究在WooCommerce核心文件和一些測試後,我已經成功地去掉了客戶的詳細信息,計費並根據您的意願通過電子郵件收件地址。

下面是代碼:

function removing_customer_details_in_emails($order, $sent_to_admin, $plain_text, $email){ 
    $mailer = WC()->mailer(); 
    remove_action('woocommerce_email_customer_details', array($mailer, 'customer_details'), 10, 4); 
    remove_action('woocommerce_email_customer_details', array($mailer, 'email_addresses'), 20, 4); 
} 
add_action('woocommerce_email_customer_details', 'removing_customer_details_in_emails', 5, 4); 

此代碼放在你的活躍兒童主題(或主題)的function.php文件或也以任何插件文件。

此代碼已經過測試並且功能完整。


參考文獻:

+0

哇!它正在工作!非常感謝你!願上帝保佑你! – Yogie

+0

LoicTheAztec再次感謝您的幫助,我可以成功完成該項目。但現在我想學習,你是如何達到這個目標的?你究竟做了什麼研究?你是怎麼知道它是'woocommerce_email_customer_details'鉤子而不是'woocommerce_email_order_meta'?然後你怎麼找到'array($ mailer,'customer_details')'參數?你是怎麼找到'WC() - > mailer()'做的? 請建議,我可以在哪裏學習所有這些在門外術語,我是非常新的woocommerce。謝謝!! – Yogie

相關問題