Bắt buộc đăng nhập khi thanh toán trong WooCommerce có nghĩa là khách hàng phải có tài khoản và đăng nhập vào tài khoản đó, trước khi họ có thể hoàn tất quá trình thanh toán và mua hàng trên trang web của bạn. Qua đó bạn có thể thu thập thông tin khách hàng. Ngoài ra, việc đăng nhập giúp xác minh danh tính khách hàng, giảm thiểu rủi ro gian lận và thanh toán không hợp lệ.

Cách bắt buộc đăng nhập khi thanh toán cho Woocommerce
Trong cài đặt WooCommerce, bạn có thể tìm thấy các tùy chọn cho phép bạn yêu cầu khách hàng đăng nhập trước khi thanh toán.
1] Thêm code vào functions
Đầu tiên bạn chèn code bên dưới vào trong Functions theme bạn đang dùng Giao diện – theme field editor – function.php
function force_login_before_payment() {
if (!is_user_logged_in() && is_checkout()) {
wc_add_notice(__('Vui lòng đăng nhập để tiếp tục thanh toán.', 'woocommerce'), 'error');
$redirect_url = $_SERVER['REQUEST_URI'];
set_transient('redirect_url_after_login', $redirect_url, 60); // Lưu trữ trong 1 phút
wp_redirect(get_permalink(get_option('woocommerce_myaccount_page_id')));
exit;
}
}
add_action('template_redirect', 'force_login_before_payment');
function redirect_after_login() {
if (is_user_logged_in() && is_account_page()) {
$redirect_url = get_transient('redirect_url_after_login');
if ($redirect_url) {
wp_redirect($redirect_url);
delete_transient('redirect_url_after_login'); // Xóa transient
exit;
}
}
}
add_action('template_redirect', 'redirect_after_login');
Đoạn mã này sẽ bắt buộc người dùng phải đăng nhập, nếu khách hàng chưa có tài khoản thì sẽ phải đăng ký.
Sau khi đăng nhập xong, sẽ tự động chuyển hướng về trang thanh toán để tiếp tục thanh toán đơn hàng.
Có thể bạn quan tâm: Giảm giá sản phẩm hàng loạt cho woocommerce





