Khi bạn vận hành một website WordPress, việc nhận thông báo khi có bình luận mới là vô cùng quan trọng. Nó giúp bạn tương tác kịp thời với độc giả và quản lý nội dung thảo luận. Thế nhưng, nhiều người gặp phải tình trạng WordPress email bình luận không gửi, khiến họ bỏ lỡ những phản hồi giá trị. Hiện tượng này không hiếm và thường xuất phát từ cấu hình máy chủ, plugin hoặc cách WordPress xử lý email. Bài viết này sẽ phân tích từng nguyên nhân cụ thể và đưa ra giải pháp thực tế, có thể áp dụng ngay để khắc phục sự cố email thông báo bình luận.
Bản chất của việc gửi email trong WordPress và vì sao nó thường thất bại

WordPress sử dụng hàm wp_mail() để gửi email, dựa trên thư viện PHPMailer của PHP. Khi có bình luận mới, hệ thống kích hoạt hook comment_post và gọi hàm này để gửi thông báo đến email quản trị. Tuy nhiên, hầu hết các máy chủ web (hosting) không được cấu hình sẵn để gửi email trực tiếp qua SMTP. Thay vào đó, họ sử dụng hàm mail() của PHP, vốn dễ bị chặn bởi firewall, spam filter hoặc không được các nhà cung cấp dịch vụ email (Gmail, Outlook) tin tưởng.
Kết quả là thông báo bình luận có thể bị rơi vào thư mục spam, bị từ chối ngay từ server hoặc không bao giờ được gửi đi. Đây là lý do cốt lõi khiến WordPress email bình luận không gửi trở thành vấn đề phổ biến, đặc biệt với các website dùng hosting chia sẻ.
Toàn bộ nguyên nhân khiến WordPress không gửi email thông báo bình luận

1. Máy chủ không hỗ trợ hoặc chặn hàm mail() của PHP
Phần lớn các nhà cung cấp hosting giá rẻ vô hiệu hóa mail() hoặc giới hạn số lượng email gửi đi mỗi giờ để tránh bị lạm dụng. Nếu bạn dùng Hostinger, GoDaddy gói cơ bản hoặc một số host nước ngoài, khả năng cao đây là nguyên nhân. Kiểm tra bằng cách tạo một script PHP đơn giản gọi hàm mail() để test. Nếu không gửi được, bạn chắc chắn cần chuyển sang SMTP.
2. Plugin hoặc theme can thiệp vào chức năng gửi email
Một số plugin bảo mật (Wordfence, All In One WP Security) có thể chặn các thông báo bình luận vì cho rằng đó là spam. Theme không chuẩn hoặc custom code trong file functions.php cũng có thể vô hiệu hóa hook wp_new_user_notification hoặc comment_notification. Hãy kiểm tra bằng cách tạm thời vô hiệu hóa tất cả plugin và chuyển về theme mặc định (Twenty Twenty-Five).
3. Cài đặt email sai trong mục Settings > General
Email quản trị viên trong WordPress phải khớp với tên miền của bạn. Ví dụ: website là example.com thì email admin nên là [email protected]. Nếu bạn dùng [email protected], rất nhiều server sẽ từ chối gửi vì chính sách chống giả mạo. Đây là lỗi phổ biến mà nhiều người mới bắt đầu mắc phải.
4. Email thông báo bị đánh dấu là spam
Ngay cả khi email được gửi thành công, các dịch vụ như Gmail, Yahoo có thể đưa chúng vào thư mục Spam do thiếu xác thực DKIM, SPF hoặc nội dung email chứa link lạ. Trong trường hợp này, bạn không thể nhìn thấy thông báo bình luận trong hộp thư chính, dù thực tế đã có.
5. Xung đột mã nguồn hoặc lỗi cú pháp PHP
Nếu bạn từng thêm code vào functions.php để tùy chỉnh email thông báo (ví dụ: thêm logo, thay đổi tiêu đề), một lỗi cú pháp nhỏ có thể khiến toàn bộ chức năng gửi email ngừng hoạt động. Kiểm tra lỗi PHP bằng cách bật WP_DEBUG trong wp-config.php.
Hướng dẫn chi tiết khắc phục tình trạng WordPress email bình luận không gửi

Bước 1: Kiểm tra email có được gửi đi hay không
Trước khi sửa, hãy chắc chắn rằng thực sự WordPress không gửi email. Cài plugin Check Email hoặc WP Mail Logging. Plugin này ghi lại toàn bộ email WordPress gửi đi, bao gồm trạng thái (thành công hay thất bại). Nếu log hiển thị email đã gửi nhưng bạn không nhận được, vấn đề nằm ở server nhận hoặc spam. Nếu log báo lỗi, vấn đề nằm ở máy chủ gửi.
Bước 2: Thiết lập SMTP – Giải pháp mạnh nhất cho lỗi không gửi email
SMTP (Simple Mail Transfer Protocol) cho phép WordPress gửi email thông qua một máy chủ email chuyên nghiệp (Gmail, SendGrid, Mailgun, SMTP của hosting) thay vì dùng hàm mail(). Đây là cách duy nhất đảm bảo email bình luận đến tay bạn.
Cấu hình SMTP với Gmail (miễn phí):
- Cài plugin WP Mail SMTP (bản miễn phí đã đủ dùng).
- Vào Settings > WP Mail SMTP, chọn ‘Gmail’ làm mailer.
- Tạo App Password cho tài khoản Google (không dùng mật khẩu chính) và nhập thông tin.
- Nhập email người gửi (phải trùng với email Gmail
Cài plugin WP Mail Logging, viết một bình luận mới trên site, sau đó vào mục log. Nếu có dòng ghi nhận gửi, email đã được khởi tạo. Nếu không thấy dòng nào, chức năng gửi email của WordPress đang bị lỗi nặng.
Tại sao đã cấu hình SMTP nhưng vẫn không gửi được email bình luận?
Có thể do plugin SMTP bị xung đột, hoặc thông tin SMTP sai (host, port, mật khẩu ứng dụng). Ngoài ra, hãy xóa cache của plugin SMTP (nếu có) và thử lại. Đảm bảo
Có,
Thường là có, vì cùng cơ chế wp_mail(). Nếu email bình luận không gửi, rất có thể email chức năng khác (quên mật khẩu, đăng ký) cũng không gửi được. Khắc phục bằng SMTP sẽ giải quyết toàn bộ.
Hosting của tôi nói họ không chặn mail(), nhưng sao vẫn lỗi?
Có thể server giới hạn tần suất gửi, hoặc mail() hoạt động nhưng không đến được do không có xác thực. Trong môi trường chia sẻ, SMTP vẫn là giải pháp tốt nhất. Nếu hosting nói “mở mail()”, hãy yêu cầu họ kiểm tra log mail server để biết lý do từ chối cụ thể.
Kết luận

Vấn đề WordPress email bình luận không gửi không quá phức tạp nếu bạn hiểu rõ nguyên nhân và làm theo từng bước có hệ thống. Đa số trường hợp đều đến từ việc hosting chặn hàm mail() hoặc thiếu xác thực email. Giải pháp SMTP với plugin WP Mail SMTP là cách an toàn, hiệu quả và nhanh nhất. Sau khi cấu hình xong, hãy luôn giữ thói quen kiểm tra log email và spam folder định kỳ để đảm bảo bạn không bỏ lỡ bất kỳ bình luận nào từ độc giả. Nếu vẫn gặp lỗi, kiểm tra lại xung đột plugin và theme, đừng ngần ngại nhờ đến sự hỗ trợ từ cộng đồng hoặc chuyên gia WordPress.
- Theme WordPress Là Gì? Toàn Tập Kiến Thức Từ A Đến Z Cho Người Mới Bắt Đầu
- Cách khắc phục lỗi WordPress Redirect Loop (Vòng lặp chuyển hướng) triệt để
- GSC API Là Gì? Hướng Dẫn Toàn Diện Từ A Đến Z Cho Người Làm SEO
- Khắc phục lỗi WordPress email upload attachment lỗi: Nguyên nhân và giải pháp toàn diện
- Cách Xử Lý WordPress Maintenance Mode Sau Update: Hướng Dẫn Chi Tiết Từ A-Z

















