Woocommerce -如何根据支付类型发送自定义电子邮件



问题在这里。我的woocommerce网站有3种不同的支付选项-

    <
  • 检查付款/gh>
  • 西部联合电报公司
  • 货到付款

如果我的买家结账时使用"支票付款",我想给他发送一封自动电子邮件,概述支票付款的步骤。如果他用"西联汇款"结帐,我想把我的西联汇款信息作为自动电子邮件发给他。另一个自动电子邮件应该发送现金到货。

通常在Woocommerce你有一个单一的电子邮件发送给客户所有完成的订单,在我的情况下,我需要3个不同的电子邮件取决于支付选项。

所以我开始使用这个教程来制作一个自定义的电子邮件- https://www.skyverge.com/blog/how-to-add-a-custom-woocommerce-email/

上面的教程是用来制作自定义电子邮件加速运输。这是教程中使用的相同代码行-

// bail if shipping method is not expedited
if ( ! in_array( $this->object->get_shipping_method(), array( 'Three Day Shipping', 'Next Day Shipping' ) ) )
    return;

如果我想检查付款方式是什么,代码行应该是什么?我想检查一下付款方式是否为"支票付款",这样我就可以给他发一封自定义邮件了。

如果你有什么想法请告诉我。

您可以使用thank_you hook的自定义函数为每种支付方式发送不同的自定义电子邮件。您可以设置许多选项,具体请参考wp_mail()函数代码参考。

代码如下:

add_action( 'woocommerce_thankyou', 'wc_cheque_payment_method_email_notification', 10, 1 );
function wc_cheque_payment_method_email_notification( $order_id ) {
    if ( ! $order_id ) return;
    $order = wc_get_order( $order_id );
    $user_complete_name_and_email = $order->billing_first_name . ' ' . $order->billing_last_name . ' <' . $order->billing_email . '>';
    $to = $user_complete_name_and_email;
    // ==> Complete here with the Shop name and email <==
    $headers = 'From: Shop Name <name@email.com>' . "rn";
    // Sending a custom email when 'cheque' is the payment method.
    if ( get_post_meta($order->id, '_payment_method', true) == 'cod' ) {
        $subject = 'your subject';
        $message = 'your message goes in here';
    }
    // Sending a custom email when 'Cash on delivery' is the payment method.
    elseif ( get_post_meta($order->id, '_payment_method', true) == 'cheque' ) {
        $subject = 'your subject';
        $message = 'your message goes in here';
    }
    // Sending a custom email when 'Western Union' is the payment method.
    else {
        $subject = 'your subject';
        $message = 'your message goes in here';
    }
    if( $subject & $message) {
        wp_mail($to, $subject, $message, $headers );
    }
}

此代码位于您的活动子主题(或主题)的functions.php文件或任何插件文件中。

经过测试,它可以工作。


-更新相关评论。

获取您可用的付款方式鼻涕虫(临时的,只是为了获取所有鼻涕虫)。这将在商店页面或产品页面上显示您可用的付款方式。使用后请取下。

下面是函数代码:

function the_available_payment_gateways(){
    foreach(WC()->payment_gateways->get_available_payment_gateways() as $payment_gateway)
        echo '<div style="border:solid 1px #999">Method Title: "'.$payment_gateway->title .'" / Method slug: "'.$payment_gateway->id .'"</div>';
}
add_action( 'woocommerce_before_main_content', 'the_available_payment_gateways', 1 );

此代码位于活动子主题(或主题)的function.php文件中。

1)首先,您应该在wordpress.stackexchange.com上询问WP问题

2)一般来说,更简单的方法是发送电子邮件,在邮件中列出所有选项(用段落,甚至链接分开),像这样:

你好…

,
=====付款方式=======
1)西联汇款-遵循此说明:http://example.com/how-to-1
2)支票支付-遵循此说明:http://example.com/how-to-2
货到付款-遵循这个指令:http://example.com/how-to-3

3)如果你知道更多,那么这里列出了所有的钩子- https://docs.woocommerce.com/wc-apidocs/hook-docs.html(搜索word EMAIL),然后自定义所需的钩子

相关内容

  • 没有找到相关文章

最新更新