039 4321 444
039 4321 444
0335006543
0335006543
1 Donate cho em ly cafe được hông ^^

[Hướng dẫn] Thêm Nút Huỷ Đơn Hàng Cho Khách Sau Khi Thanh Toán

huy-don-hang-sau-khi-thanh-toan

[Hướng dẫn] Thêm Nút Huỷ Đơn Hàng Cho Khách Sau Khi Thanh Toán

Giống với các sàn TMĐT hiện nay, việc cho phép khách hàng có thể huỷ đơn hàng sau khi thanh toán có thể giúp tăng trải nghiệm mua sắm được tốt hơn. Mặc dù điều này có thể trong ngắn hạn làm giảm doanh thu của bạn nhưng nó lại góp phần gia tăng tỷ lệ chuyển đổi vì khách hàng khi đó sẽ trust hơn.

Hôm nay, flatsomea-z sẽ hướng dẫn các bạn cách thêm nút “Huỷ đơn hàng” trong trang tài khoản của khách hàng với 1 đoạn code vô cùng đơn giản.

huy-don-hang-sau-khi-thanh-toan
huy-don-hang-sau-khi-thanh-toan

Bạn chỉ cần copy và paste đoạn code sau vào file functions.php rồi lưu lại là xong!

//Cho phép KH huỷ đơn hàng sau khi thanh toán
add_filter( 'woocommerce_valid_order_statuses_for_cancel', 'custom_valid_order_statuses_for_cancel', 10, 2 );
function custom_valid_order_statuses_for_cancel( $statuses, $order ){

// Cài đặt các trạng thái mà bạn cho phép khách hàng huỷ
$custom_statuses = array( 'completed', 'pending', 'processing', 'on-hold', 'failed' );

// Cài đặt số ngày được phép huỷ kể từ khi đặt đơn
$duration = 3; // 3 days

// Lấy ID đơn đặt hàng và WC_Order
if( isset($_GET['order_id']))
$order = wc_get_order( absint( $_GET['order_id'] ) );

$delay = $duration*24*60*60; // (duration in seconds)
$date_created_time = strtotime($order->get_date_created()); // Creation date time stamp
$date_modified_time = strtotime($order->get_date_modified()); // Modified date time stamp
$now = strtotime("now"); // Now time stamp

// Using Creation date time stamp
if ( ( $date_created_time + $delay ) >= $now ) return $custom_statuses;
else return $statuses;
}

Chúc các bạn thành công!

Nếu có thể thì click vào QC giúp mình duy trì web với nhé ^^

2 thoughts on “[Hướng dẫn] Thêm Nút Huỷ Đơn Hàng Cho Khách Sau Khi Thanh Toán

  1. Tien Dung says:

    Bác có hướng dẫn nào để thay đổi form theo dõi đơn hàng từ mặc định là email thành số điện thoại không ạ?

Trả lời

Email của bạn sẽ không được hiển thị công khai.