У меня есть цифровые и физические продукты в моем магазине.Я хотел бы иметь отдельное электронное письмо, когда заказ размещен там, где был заказан цифровой продукт, и не использовать электронное письмо, когда статус заказа завершен.
Обходной путь, о котором я подумал, - создать пользовательский статус, а затемсоздать новое электронное письмо для этого статуса.
Я успешно создал статус заказа. Моя проблема связана с установкой статуса при поступлении заказа. Это мой код:
add_action( 'woocommerce_thankyou', 'change_order_status', 10, 1 );
function change_order_status( $order_id){
$order = wc_get_order( $order_id );
foreach ( $order->get_items() as $item_id => $item_values ) {
// Product_id
$product_id = $item_values->get_product_id();
// OR the Product id from the item data
$item_data = $item_values->get_data();
$product_id = $item_data['product_id'];
# Targeting a defined product ID
if ( $product_id == 437 ) {
$order->update_status('digital-completed');
}
}
}
С этимКод заказа сначала устанавливается на «Завершено», а затем он обновляется до моего пользовательского статуса.Это означает, что покупатель получит два электронных письма, одно для завершенного статуса и одно для моего пользовательского статуса.
Я изо всех сил пытаюсь найти способ установить заказ на мой пользовательский статус, когда он впервые размещен.
Что лучше сделать?
Спасибо!