如何在 WooCommerce 中自定義訂單電子郵件

已發表: 2019-04-02
自定義 woocommerce 訂單電子郵件
關注@Cloudways

假設經過幾天的努力,您成功地在專門的 WooCommerce 網絡託管平台上設置了您的商店

產品頁面現在連接到一個完美運行的數據庫,結帳過程完全沒有問題。 包括產品頁面、圖庫和反饋在內的每一個元素都反映了您品牌的顏色和風格。

然後,您決定測試您的產品訂購流程,突然發現從用戶的角度來看,訂購電子郵件相當乏味或過於籠統。 現在您一定想知道您為自定義 WooCommerce 商店所做的所有辛勤工作都是徒勞的。

WooCommerce 包含幾種可能與您商店的流程不匹配的訂單狀態,但您仍然可以將訂單標記為自定義狀態,例如付款待處理、處理中、擱置、失敗等。

許多 WooCommerce 商店所有者和管理員都有這個常見查詢:如何修改默認 WooCommerce 請求消息以具有我的品牌的外觀和感覺,如何添加其他內容以幫助客戶完成訂單以及如何創建自定義 WooCommerce 訂單狀態.

雖然製作令人印象深刻的 HTML 電子郵件本身確實是一項成就,但 WooCommerce 提供了多種選擇,即使是業餘愛好者也可以創建一些令人驚嘆的電子郵件。

客戶電子郵件

“Vanilla”提供 WooCommerce 電子郵件通知,這些電子郵件通知會發送給客戶,以響應他們與商店的互動。 以下是您的 WooCommerce 商店客戶最重要的電子郵件。

  • 新訂單:收到新訂單時會發送新訂單電子郵件。
  • 已取消訂單:當訂單被標記為已取消時,將發送已取消的訂單電子郵件。
  • 失敗的訂單:當處理中或擱置的訂單被標記為失敗時,會發送失敗的訂單電子郵件。
  • 訂單暫停:這是發送給客戶的訂單通知。 它包含訂單被擱置後的訂單詳細信息。
  • 處理訂單:這是發送給客戶的訂單通知。 它包含付款後的訂單詳細信息。
  • 已完成訂單:當客戶的訂單標記為已完成時,將向客戶發送訂單完成電子郵件。 這些電子郵件通常表明訂單已發貨。
  • 退款訂單:當客戶的訂單被標記為已退款時,將向客戶發送已退款訂單的電子郵件。
  • 客戶發票:客戶發票電子郵件包含訂單信息和付款鏈接。
  • 客戶備註:當您向訂單添加備註時,會發送客戶備註電子郵件。
  • 重置密碼:客戶重置密碼時會發送客戶“重置密碼”電子郵件。
  • 新帳戶:當客戶通過結帳或帳戶註冊頁面註冊時,將向客戶發送客戶“新帳戶”電子郵件。

除了這些標準電子郵件類型之外,您還可以添加自定義電子郵件。

託管 WooCommerce 託管 每月 10 美元起。

完全自由地創建、管理和自定義您的 WooCommerce 商店。

免費試用 3 天

WooCommerce 全球電子郵件選項

標準的 WooCommerce 電子郵件如下所示:

WooCommerce 管理員允許對此默認電子郵件佈局進行一些基本自定義。 登錄 WordPress 管理員並轉到WooCommerce > 設置 > 電子郵件 > 電子郵件發件人選項後,可以訪問這些選項。 這些選項包括:

  • 設置發件人姓名/地址(對客戶可見)
  • WooCommerce 電子郵件標題圖像大小
  • 更改電子郵件頁腳文本
  • 選擇不同的基礎、背景和正文顏色

WooCommerce 電子郵件選項

WooCommerce 電子郵件選項

請記住,這些選擇適用於所有電子郵件。 只需幾分鐘,您就可以通過更改 WooCommerce 電子郵件標題圖像大小、自定義頁腳文本和另一種基色來創建高度自定義的電子郵件。

電子郵件模板

您可能已經註意到 WooCommerce 確定使用了明亮的基色。 作為補償,它為標題使用了合適的陰影。 不幸的是,此邏輯並未應用於頁腳的內容。 這個事故可以很容易地手動修復!

WooCommerce 電子郵件特定選項

每種電子郵件類型都有自己的一組自定義選項。 可以通過WooCommerce > 設置 > 電子郵件 > 處理訂單訪問這些選項(此示例路徑側重於處理訂單電子郵件。您可以更改電子郵件的多個方面,包括:

  • 啟用或禁用是否發送電子郵件
  • 電子郵件的主題
  • 電子郵件標題(默認為“感謝您的訂單”)
  • 電子郵件是作為 HTML 還是純文本發送(默認選項是 HTML)

處理訂單

在這裡,我將自定義電子郵件標題設置為“感謝您的訂單”。

處理訂單

覆蓋自定義電子郵件 WooCommerce 模板

更有效和高效的方法是修改默認電子郵件佈局。 WooCommerce 提供了一個有用的模板系統,允許您通過將格式文件複製到主題中來自定義商店或電子郵件的部分內容。 每個電子郵件類型都有其內容的模板文件(例如,woocommerce/templates/emails/customer-process-order.php)。 此外,還有所有電子郵件類型都可以訪問和使用的共享模板。 這些可以在woocommerce/templates/emails/email-styles.php 中找到。 在許多情況下,這是開發人員覆蓋以更改電子郵件的共享方面的模板。 前面提到的處理頁腳問題的過程是:

  1. 首先,確保 WordPress 安裝中存在以下目錄: wp-content/themes/ 接下來,將wp-content/plugins/woocommerce/templates/emails/email-styles.php中的文件複製到商店的主題中: 最後,編輯your-theme /woocommerce/emails/email-styles.php以將頁腳文本顏色更改為黑色(為簡潔起見,僅顯示模板文件代碼的相關部分):
 $信用=“
顏色:#66bae3;
字體大小:15px;
文本對齊:居中;
";

這會生成一個更具可讀性的頁腳:

image05

使用操作/過濾器進行條件自定義

自定義電子郵件的最後也是最有效的方法是使用 WooCommerce 自定義代碼。 這顯然需要高水平的 PHP 專業知識。 好消息是這個過程很簡單,因為原始的 WooCommerce 佈局仍在使用中。 該過程涉及更改部分內容。

過濾器功能

  • has_filter()
  • 添加過濾器()
  • 應用過濾器()
  • apply_filters_ref_array()
  • current_filter()
  • 刪除過濾器()
  • remove_all_filters()
  • 做過濾器()

動作函數

  • has_action()
  • add_action()
  • 做動作()
  • do_action_ref_array()
  • did_action()
  • 刪除動作()
  • remove_all_actions()
  • 做動作()

激活/停用/卸載功能

  • register_activation_hook()
  • register_uninstall_hook()
  • register_deactivation_hook()

對於此示例,我將根據使用的結帳付款類型在電子郵件中添加一些有用的付款說明。

首先,將以下內容添加到主題的functions.php :

 add_action('woocommerce_before_email_order', 'add_order_instruction_email', 10, 2);
 
功能 add_order_instruction_email( $order, $sent_to_admin ) {
  
  如果(!$sent_to_admin){
 
    if ('cod' == $order->payment_method) {
      // 貨到付款方式
      echo '<p><strong>說明:</strong>在交貨後立即全額付款:<em>只收現金,沒有例外</em>。</p>';
    } 別的 {
      // 其他方法(即信用卡)
      echo '<p><strong>說明:</strong>請在您的下一張信用卡賬單上查找“Madrigal Electromotive GmbH”。</p>';
    }
  }
}

如果客戶在結賬時選擇“貨到付款”,客戶將收到包含有用訂單說明的電子郵件:

WooCommerce 結帳設置

插件/支付網關選項

幾個插件和支付網關實際上允許您自定義部分訂單電子郵件。 例如,內置的銀行/電匯支付方式允許您配置指令和插入電匯信息。 這可以通過WooCommerce > Settings > Checkout > BACS輕鬆完成。

WooCommerce 結帳設置

雖然不常見,但很高興知道這些選項可用。 此信息還可以幫助您為商店選擇特定插件。

WooCommerce 電子郵件 add_actions 鉤子

在處理 WooCommerce 電子郵件時,add_actions 掛鉤通常會派上用場。 使用此鉤子時,您將需要使用一個全局變量 email 將包含電子郵件主題。 這是代碼片段:

 add_action('woocommerce_email_header','woocommerce_emails_before_header',1,3);
功能 woocommerce_emails_before_header($email_heading, $email){
    $GLOBALS['email'] = $email;
}

上面的鉤子可以放在functions.php(位於您的主題文件夾中)或WooCommerce電子郵件模板的開頭。 全局變量 $email 調用主 WooCommerce 電子郵件對象,而 $order 包含全局 WooCommerce 訂單對象的實例

全球$電子郵件; 
$order = $email->對象;

每個產品的 WooCommerce 自定義電子郵件

以下代碼為不同的產品發送自定義訂單電子郵件模板

例如,對於產品 ID 87 ,您希望顯示標題標題 WooCommerce 電子郵件通知或如何測試 WooCommerce 電子郵件:

 功能 woocommerce_custom_email_per_product_depending_on_product_id( $email_heading, $order ) {
    全球$woocommerce;
    $items = $order->get_items();
    foreach ( $item 作為 $item ) {
        $product_id = $item['product_id'];
        如果($product_id == 87){
            $email_heading = 'WooCommerce 電子郵件通知或如何測試 WooCommerce 電子郵件';
        }
        返回 $email_heading;
    }
}
add_filter('woocommerce_email_heading_customer_processing_order', 'woocommerce_custom_email_per_product_depending_on_product_id', 10, 5);

注意:既然您已經了解了自定義 WooCommerce 訂單電子郵件的整個過程,您現在可以選擇保留該功能或為 WooCommerce 電子郵件確認和通知創建單獨的 WooCommerce 電子郵件插件。

結論

設置 WooCommerce 商店非常簡單,但自定義默認電子郵件模板有時會變得很棘手。 在本教程中,我討論瞭如何發送完全自定義的 WooCommerce 託管商店電子郵件以適應商店活動的各個方面。 我還強調了可以更改默認電子郵件模板以在電子郵件中插入特定於商店和特定於訂單的信息以提供更好的用戶體驗的方式。

如果您想添加到討論中或提出問題,請在下面發表評論!