2017-09-06 58 views
1

如何編輯admin-new-order.php WooCommerce模板以根據運輸方式有條件地發送一些自定義客戶詳細信息?定製Woocommerce基於運輸方式的新訂單電子郵件通知

例如(新訂單的電子郵件通知)

  • 如果訂單送貨方式是flat rate,我想添加一些自定義字段信息到客戶詳細信息。
  • 如果訂單運輸方式不是flat rate,我不希望顯示自定義字段信息。

或者也許有一些片段,在這個函數function.php?

回答

1

您可以使用任何的這個迷上一個自定義函數鉤子(調整鉤優先)

  • woocommerce_email_order_details
  • woocommerce_email_order_meta
  • woocommerce_email_customer_details

這是一個上鉤代碼示例(而不是覆蓋模板):

add_action ('woocommerce_email_customer_details', 'custom_email_customer_details', 15, 4); 
function custom_email_customer_details($order, $sent_to_admin, $plain_text, $email){ 

    // Only for "New Order" email notification 
    if ('new_order' != $email->id) return; 

    // Only "Flat Rate" Shipping Method 
    if ($order->has_shipping_method('flat_rate')){ 
     $order_id = $order->get_id(); // The Order ID 

     // Test output 
     echo "<p>Message: The Order ID is $order_id</p>"; 
     echo '<p>Custom field: '. get_post_meta($order_id, '_recorded_sales', true) .'</p>'; 
    } 
} 

這裏掛鉤優先級是15,所以它是在客戶詳細信息之後。

代碼會出現在您的活動子主題(或主題)的function.php文件中,或者也存在於任何插件文件中。

此代碼已經過測試並可正常工作。

+1

謝謝!如果我想有條件地刪除賬單地址或送貨地址的詳細信息或兩者(截圖 - http://prntscr.com/gioday),我應該使用什麼鉤子和數組? –

相關問題