WooCommerce: Đặt Trạng thái cho Đơn hàng mới.

Trạng thái Đơn hàng trong WooCommerce. Tất cả các đơn đặt hàng WooCommerce đều chuyển sang trạng thái “đang xử lý”, “đã hoàn thành”, “tạm dừng” và các trạng thái đơn đặt hàng mặc định khác dựa trên phương thức thanh toán và loại sản phẩm.

Đôi khi những trạng thái này là không đủ. Ví dụ: bạn có thể cần đánh dấu các đơn đặt hàng nhất định theo một cách khác để theo dõi, lọc, xuất khẩu. Hoặc bạn có thể muốn tắt các email mặc định bằng cách bỏ qua các thay đổi trạng thái đơn hàng mặc định.

Việc đặt Trạng thái Đơn hàng Tùy chỉnh cho Đơn hàng Mới khá dễ dàng. Và hôm nay chúng ta sẽ xem bạn cần những đoạn mã PHP nào để làm cho nó hoạt động!

WooCommerce: Đặt Trạng thái cho Đơn hàng mới.

Đoạn mã PHP: Đặt Trạng thái Đơn hàng trong Woocommerce.

1. Đăng ký Trạng thái Đơn hàng.

[code]

add_filter( ‘woocommerce_register_shop_order_post_statuses’, ‘bbloomer_register_custom_order_status’ );

function bbloomer_register_custom_order_status( $order_statuses ){

// Status must start with “wc-”
$order_statuses[‘wc-custom-status’] = array(
‘label’ => _x( ‘Custom Status’, ‘Order status’, ‘woocommerce’ ),
‘public’ => false,
‘exclude_from_search’ => false,
‘show_in_admin_all_list’ => true,
‘show_in_admin_status_list’ => true,
‘label_count’ => _n_noop( ‘Custom Status (%s)’, ‘Custom Status (%s)’, ‘woocommerce’ ),
);
return $order_statuses;
}

[/code]

2. Hiển thị Trạng thái Đơn hàng trong menu thả xuống.

[code]

add_filter( ‘wc_order_statuses’, ‘bbloomer_show_custom_order_status’ );

function bbloomer_show_custom_order_status( $order_statuses ) {
$order_statuses[‘wc-custom-status’] = _x( ‘Custom Status’, ‘Order status’, ‘woocommerce’ );
return $order_statuses;
}

add_filter( ‘bulk_actions-edit-shop_order’, ‘bbloomer_get_custom_order_status_bulk’ );

function bbloomer_get_custom_order_status_bulk( $bulk_actions ) {
// Note: “mark_” must be there instead of “wc”
$bulk_actions[‘mark_custom-status’] = ‘Change status to custom status’;
return $bulk_actions;
}

[/code]

3. Đặt Trạng thái Đơn hàng Tùy chỉnh.

[code]

add_action( ‘woocommerce_thankyou’, ‘bbloomer_thankyou_change_order_status’ );

function bbloomer_thankyou_change_order_status( $order_id ){
if( ! $order_id ) return;
$order = wc_get_order( $order_id );

// Status without the “wc-” prefix
$order->update_status( ‘custom-status’ );
}

[/code]

Thêm đoạn mã này vào đâu?

Bạn có thể đặt các đoạn mã PHP ở cuối tệp functions.php chủ đề con của mình (trước “?>” Nếu bạn có). Mặt khác, CSS có trong tệp style.css chủ đề con của bạn.

Đoạn mã này (vẫn) hoạt động chứ?

Vui lòng cho tôi biết trong phần bình luận nếu mọi thứ hoạt động như mong đợi. Tôi rất sẵn lòng sửa đổi đoạn mã nếu bạn có góp ý phù hợp (vui lòng cung cấp ảnh chụp màn hình).

Dịch vụ thiết kế website chuyên nghiệp tại Web MTP

Liên hệ ngay với chúng tôi nếu bạn đang gặp khó khăn trong việc thiết kế web nhé!

Website: https://webmtp.com/

Hotline: 0931 912 379

WooCommerce: Ẩn tiện ích Mini-Cart trong Woocommerce

Viết bình luận





Mời bạn xem nhiều bài hấp dẫn khác

Phương pháp SEO tăng thứ hạng của website trên Google

Tìm hiểu phương pháp chọn từ khóa chuẩn SEO

Plugin giúp bảo mật website WordPress

Tăng trust website hiệu quả bằng 100 backlink chất lượng đến từ Google

Cách chăm sóc website hiệu quả

Cách tạo nút gọi trên website WordPress

Mời bạn đọc thêm

Phương pháp SEO tăng thứ hạng của website trên Google

Tìm hiểu phương pháp chọn từ khóa chuẩn SEO

Plugin giúp bảo mật website WordPress

Tăng trust website hiệu quả bằng 100 backlink chất lượng đến từ Google

Cách chăm sóc website hiệu quả

Cách tạo nút gọi trên website WordPress