当前位置: 首页 > 知识库问答 >
问题:

在WooCommerce中完成订单后向客户发送电子邮件

羊舌高明
2023-03-14

我的Wordpress安装有问题,更具体的说是WooCommerce。

我在过去几个月中一直在工作的客户希望,每次客户完成/支付订单时,除了标准的订单确认电子邮件外,还会向他的电子邮件地址发送一封自定义电子邮件。

简而言之:我需要在订单完成时给客户发送一封自定义邮件。如何在functions.php中做到这一点?

我尝试使用官方文档中描述的各种钩子和函数,但无法弄明白。

Wordpress的版本是3.8.1,而WooCommerce的版本是2.0.20。

提前谢谢你。

共有3个答案

孔光赫
2023-03-14

我认为您没有检索邮件是由于以下三个主要原因

  1. 如果SMTP插件已启用,则需要对其进行相应配置
  2. 尝试PHP邮件函数为邮件('caffeinated@example.com','my subject',$message);
  3. 添加add_action('woocommerce_payment_complete','order_complete',1)的操作添加优先级;
谭玄天
2023-03-14

我解决了问题。我总是用错钩子。这是问题的主要原因。正确的钩子名称是“woocommerce_thankyou”。在我把函数改成使用这个钩子之后,一切都进行得恰到好处。

丘华翰
2023-03-14

您可以通过使用名为woocommerce_payment_complete的操作来实现;

$order = new WC_Order( $order_id );

function order_completed( $order_id ) {
    $order = new WC_Order( $order_id );
    $to_email = $order["billing_address"];
    $headers = 'From: Your Name <your@email.com>' . "\r\n";
    wp_mail($to_email, 'subject', 'message', $headers );

}

add_action( 'woocommerce_payment_complete', 'order_completed' );
 类似资料:
  • 我在我的木业商店里遇到了一个很奇怪的问题。有几天“Customer_Processing_Order”电子邮件不再发送给客户。即使我在订单详细信息中触发手动发送此电子邮件,也没有发生任何事情。 在一般电子邮件中,发送与SMTP数据一起工作。当我将状态设置为“已完成”时,电子邮件将被发送。只有订单确认不起作用。 电子邮件被激活,我也检查了错误日志。我还安装了订单电子邮件的预览插件。当我想生成预览时,

  • 我将此代码用于新订单并设置完成状态。 之后,woocommerce自动发送电子邮件给买家。 但我不想发这封邮件。 我怎么能? 注意:我不想禁用从wp-admin发送电子邮件

  • 我正在尝试取消/删除在订单发货后将订单状态保存为“已完成”时发送的自动客户电子邮件。 不想发送自动电子邮件的原因是,我在电子邮件模板文件(override)/woocommerce/email/customer-completed-order.php中添加了一个代码,它将在发送给客户的电子邮件中显示在admin中创建的新订单注释,如果我们添加订单注释并保存它,然后将订单状态更改为completed

  • 拜托,帮忙解决问题。我想让WooComerce只发送一次电子邮件,关于新的订单-管理和客户。如果我将更改订单状态-没有电子邮件将被发送。 我尝试在处禁用通知,并禁用客户端的所有通知,但在这种情况下,客户端即使是第一次也不会收到任何电子邮件。

  • 在woocommerce thank you页面上,如果订单状态正在处理,则向多个电子邮件地址发送WC_Email_Customer_Invoice电子邮件。 但问题是电子邮件只发送到客户的电子邮件地址,没有电子邮件发送到prohostreview@gmail.com。我正在使用最新的WordPress和woo-commerce插件。 请告诉我我在这里做错了什么。 问候。

  • 在WooCommerce中,当客户从购物车结账并提交订单时,如果付款未被处理,则订单被设置为“未决”付款。管理员没有收到任何关于。 我想发送一封电子邮件给行政这类订单。我该怎么做呢?