Bài viết này mình sẽ hướng dẫn tối ưu tốc độ gửi form, đặt hàng mà không chậm như các website wordpress hiện tại. Nó làm cho khách hàng khó chịu, vì thế bạn sẽ mất đi các khách hàng có nhu cầu.
Trước tiên, mình muốn đính chính rằng thời gian gửi email ở đây chỉ tính thời gian server xử lý, không tính thời gian người dùng nhận được email.
Khi gửi email, server phải xác thực với SMTP server nên yêu cầu gửi email trong 1 giây là rất khó thực hiện. Tuy nhiên, việc đẩy email vào hàng đợi và xử lý sau thì hoàn toàn có thể. Mình đã sử dụng một plugin tên là Mail Queue (có thể tham khảo tại đây: Plugin). Mặc dù ít người dùng nhưng plugin này hoạt động rất tốt. Các bạn chỉ cần cấu hình tài khoản SMTP trong phần cài đặt của plugin là xong. Có hai lựa chọn: sử dụng WP_CRON hoặc CRON JOB của Linux. Các bạn có thể đọc thêm về WP_CRON trên trang của WordPress.
Mình đã thử nghiệm trên một trường hợp khi đặt hàng sử dụng WooCommerce. Trước khi sử dụng hàng đợi, mất khoảng 5-6 giây từ khi bấm đặt hàng cho đến khi đơn hàng được tạo. Khi sử dụng hàng đợi, chỉ mất khoảng 1 đến 2 giây để tạo đơn hàng (đương nhiên là email sẽ tới sau khoảng 5-10 giây).
Nếu muốn email được gửi nhanh bạn phải đầu tư mạnh vào máy chủ để nó xử lý hàm email này nhanh hơn.
Hy vọng mẹo nhỏ này sẽ giúp các bạn cải thiện trải nghiệm người dùng cho website của mình.
Về tác giả: