自定义电子邮件缺失产品和小计

时间:2018-04-15 08:32:49

标签: php wordpress woocommerce

我有一个我在New Orders上创建的自定义电子邮件。目的是让客户和管理员知道新订单已完成(未付款)。因此,此订单将处于待处理状态。因此,在创建新订单时触发此电子邮件,但是当管理员收到电子邮件时,产品不会显示正确的小计。总数是对的。

我使用的是自定义付款模块,但我认为这不是问题。

// 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 ) {

	//global $product;

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

    $items = $order->get_items();    

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

    $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 manual 2 order ({order_number}) - {order_date}');
    // Change Heading
    $wc_email->settings['heading'] = __('New customer Pending Order 2'); 
    $wc_email->recipient .= ", $order->billing_email"; // Add email recipients (coma separated)
    

    // Send "New Email" notification (to admin)
    $wc_email->trigger( $order_id, $order );
	
	//WC()->mailer()->emails['WC_Email_New_Order']->trigger( $order->get_id(), $order );
   



}

enter image description here

1 个答案:

答案 0 :(得分:0)

同样在这里。

我已尝试使用woocommerce_checkout_order_processed挂钩,但它确实有效。

以下是操作:add_action( 'woocommerce_checkout_order_processed', 'pending_new_order_notification', 20, 1 );

希望有所帮助。