2017-07-28 7 views
1

WooCommerceでは、顧客がカートからチェックアウトして注文を送信すると、支払いが処理されないと、注文は「保留中」の支払いに設定されます。管理者は約についての電子メールを受信して​​いません。WooCommerceの保留中の注文状況について管理者に電子メールで通知します

この種の注文については、管理者にメールを送信します。どうしたらいいですか?

+0

woocommerceは、私はそれらのいずれかが役に立つかもしれません確信している、フックがたくさんあります。https:// docs.woocommerce.com/wc-apidocs/hook-docs.html – WheatBeak

答えて

0

UPDATE

新しい順が保留状態を取得し、自動的に「新規注文」電子メール通知トリガーするときに、このコードは、すべての可能な場合に解雇されます。

// New order notification only for "Pending" Order status 
add_action('woocommerce_new_order', 'pending_new_order_notification', 20, 1); 
function pending_new_order_notification($order_id) { 

    // Get an instance of the WC_Order object 
    $order = wc_get_order($order_id); 

    // Only for "pending" order status 
    if(! $order->has_status('pending')) return; 

    // Send "New Email" notification (to admin) 
    WC()->mailer()->get_emails()['WC_Email_New_Order']->trigger($order_id); 
} 

コードをあなたのアクティブな子供のテーマ(またはテーマ)のfunction.phpファイル、またはすべてのプラグインファイルに入ります。

このコードは、WooCommerceバージョン2.6.xおよび3+でテストされ、動作します。



保留中の注文をより見やすくするコード(必要な場合)のより多くのカスタマイズバージョン、:

// New order notification only for "Pending" Order status 
add_action('woocommerce_new_order', 'pending_new_order_notification', 20, 1); 
function pending_new_order_notification($order_id) { 
    // Get an instance of the WC_Order object 
    $order = wc_get_order($order_id); 

    // Only for "pending" order status 
    if(! $order->has_status('pending')) return; 

    // Get an instance of the WC_Email_New_Order object 
    $wc_email = WC()->mailer()->get_emails()['WC_Email_New_Order']; 

    ## -- Customizing Heading, subject (and optionally add recipients) -- ## 
    // Change Subject 
    $wc_email->settings['subject'] = __('{site_title} - New customer Pending order ({order_number}) - {order_date}'); 
    // Change Heading 
    $wc_email->settings['heading'] = __('New customer Pending Order'); 
    // $wc_email->settings['recipient'] .= ',[email protected]'; // Add email recipients (coma separated) 

    // Send "New Email" notification (to admin) 
    $wc_email->trigger($order_id); 
} 

コードは、あなたのアクティブな子のfunction.phpファイルに行きますテーマ(またはテーマ)、または任意のプラグインファイルでも使用できます。

このコードは、WooCommerceバージョン2.6.xおよび3+でテストされ、動作します。あなたが受信者を追加し、電子メールのヘッダー、件名をカスタマイズすることができます。このバージョンで

...

+0

この機能はとても素晴らしいですが、私にとってはうまく機能しません。私はwp 4.8バージョンを使用しています。 –

+0

@burhanjamil **私の答え**を更新しました。試してみてください。私はフックを変更しましたが、今は "保留中の注文ステータス"のためにどのような場合でも動作するはずです...今コードはよりコンパクトで軽量です。デフォルトの「新しい注文」通知を送信する2つのバージョンと、必要に応じていくつかのカスタマイズを可能にするもう1つのバージョンがあります。 – LoicTheAztec

関連する問題