正在为发送的电子邮件创建WooCommerce占位符



我的客户是一家快递公司,正在使用能够同时跟踪WooCommerce订单号和ID的快递软件,这意味着它需要订单号和标识("wc_order_abcdefg"(才能工作,我相信这在post_password列的phpmyadmin数据库中。

完整的跟踪ID类似于:wc_order_abcdefg.66

因此,在WooCommerce电子邮件设置中,它只有{order_number}。如何为{order_id}创建一个?

看起来,您的发货跟踪编号是{order_key}.{order_number}。一旦您获得了order对象,您就可以简单地使用:$order->get_order_key()来获得它的密钥。

{order_key}不可用作电子邮件占位符。因此,为了将其包含在发送给客户的电子邮件中,根据您希望其显示的位置,您有不同的选项。例如:

  • 您可以在电子邮件正文中包含跟踪号码。在这种情况下,您可以覆盖其中一个WooCommerce电子邮件模板(例如email-order-details.php(。有关如何覆盖模板的更多信息,请参阅WooCommerce文档。

  • 您可以在电子邮件的主题中包含跟踪号码。在这种情况下,可以使用woocommerce_email_subject_customer_completed_order过滤器。例如(这个片段应该添加到你的functions.php中(:

    add_filter( 'woocommerce_email_subject_customer_completed_order', 'add_tracking_number_to_email_subject', 1, 2 );
    function add_tracking_number_to_email_subject( $subject, $order ) {
    return sprintf( 'Thank you for your order! Your shipment tracking number is: %s.%s', $order->get_order_key(), $order->get_id() );
    }
    

最新更新