从WooCommerce中的另一个脚本添加客户注释



我有一个脚本,可以根据我们的ERP系统更改订单状态。

除此之外,我们还需要添加客户备注。我找到了方法:

$order->add_order_note($note);
$order->save();

不幸的是,这在订单编辑屏幕之外不起作用,我尝试从我的自定义插件运行它。(来源(

如果我通过$order->update_status($status, $note);执行此操作,它只会更新状态。

有没有办法在编辑屏幕外添加注释?(包括向客户发送电子邮件(

如果注释是针对客户的(并且必须对他可见(,则需要改用WC_Order方法set_customer_note()(或两者(:

$order->set_customer_note($note);
// $order->add_order_note($note);
$order->save();

或:

$order->set_customer_note($note);
$order->update_status($status, $note);

这需要在保存订单数据或更新订单状态之前完成。


要向客户重新发送电子邮件通知(如果需要(,您可以使用当前订单 ID :

$emails = WC()->mailer()->get_emails();
$emails['WC_Email_Customer_Completed_Order']->trigger( $order_id );
// OR: $emails['WC_Email_Customer_Processing_Order']->trigger( $order_id );
//Pass order id from hook or function with $order_id
$order = new WC_Order( $order_id );
$note = 'Add note here';
$order->add_order_note($note);
$order->save();

我正在构建一个新的秩序类。传递订单 ID 和订单备注,然后再次保存订单。

这就是我们从ERP更新网站的方式。但正如Loic所说,这种方法创建了一个私人笔记。使用他的

$order->set_customer_note($note);

以创建客户备注。

相关内容

  • 没有找到相关文章

最新更新