Có nhiều bạn hỏi anh ơi có đoạn mã nào giúp cấu hình gửi mail thay thế các plugin cấu hình SMTP không?. Trong bài biết này mình sẽ giới thiệu cho bạn cách cấu hình SMTP để gửi mail cho wordpress không cần sử dụng plugin, cách làm rất đơn giản là chỉ cần thêm 1 đoạn code nhỏ vào file functions.php của theme bạn đang sử dụng.

Vì sao cần cấu hình SMTP
Khi mới publich website lên internet thì thường chúng ta sẽ không gửi được mail thông qua các form có trên web, nguyên nhân là do các nhà cung cấp dịch vụ hostting hiện nay thường khóa hàm mail() để đảm bảo tính bảo mật.
Hiện nay có rất nhiều Plugin hỗ trợ cho việc thiết lập cấu hình SMTP (ví dụ như: WP SMTP, Easy WP SMTP, …), tuy nhiên việc cài plugin cũng sẽ có một số điểm hạn chế như:
- Cài quá nhiều Plugin sẽ làm cho website nặng lên, tốc độ load trang sẽ chậm đi.
- Vấn đề bảo mật: Hiện tại lúc bạn cài thì có thể Plugin hoạt động rất tốt, nhưng trong tương lai nếu đội ngũ xây dựng Plugin ngừng hỗ trợ hoặc bạn không cập nhật thường xuyên lên phiên bản mới, thì rất dễ bị dính các lỗ hổng bảo mật dẫn đến website bị hack.
Vì vậy để không cần sử dụng Plugin, bạn cần chèn code cấu hình vào file functions.php của theme.
Cấu hình SMTP gửi Mail
Đầu tiên bạn cần mở file functions.php trong thư mục theme bạn đang sử dụng, có thể mở bằng 1 trong những cách sau:
Quảng cáo
- Mở thông qua quản trị của Worsspress: Chọn Giao diện -> Sửa, sau đó chọn file functions.php để mở trong trình chỉnh sửa của WordPress.
- Mở thông qua tài khoản Hosting hoặc tài khoản FTP của Hosting.
Sau khi mở file functions.php thì bạn thêm đoạn code dưới vào cuối file functions.php.
1 2 3 4 5 6 7 8 9 10 |
function send_smtp_email( $phpmailer ) { $phpmailer->IsSMTP(); $phpmailer->Host = 'smtp.gmail.com'; $phpmailer->Port = 465; $phpmailer->SMTPAuth = true; $phpmailer->Username = 'email_app@gmail.com'; // Email bạn dùng đăng ký mật khẩu ứng dụng $phpmailer->Password = 'password_app_gmail'; // Mật khẩu ứng dụng Gmail $phpmailer->SMTPSecure = "ssl"; } add_action( 'phpmailer_init', 'send_smtp_email' ); |
Một số trường hợp khi bạn cấu hình xong nhưng vẫn không gửi được Mail thì nguyên nhân có thể do bên cũng cấp đã khóa cổng Mail, bạn cần liên hệ với bên cung cấp dịch vụ Hosting để họ hỗ trợ bạn mở cổng (465 hoặc 587).
=>Các bước để lấy thông tin tài khoản SMTP của Gmail
Để có thể thiết lập SMTP của Gmail bạn cần phải bật xác minh 2 bước (2-Step Verification) cho tài khoản Google. Nếu bạn chưa bật thì hãy xem hướng dẫn bật xác minh 2 bước cho tài khoản Google để bật nó lên.
Sau khi bật xong chúng ta bắt đầu tiến hành tạo mật khẩu ứng dụng để lấy thông tin tài khoản SMTP của Gmail như sau.
Bước 1: Đăng nhập vào tài khoản Google và truy cập vào phần Bảo mật bằng cách vào: https://myaccount.google.com/security. Bạn sẽ thấy phần Xác mình 2 bước đã được Bật, tiếp theo bạn click vào phần Mật khẩu ứng dụng.

Bước 2: Ở trang Mật khẩu ứng dụng bạn kéo xuống phần Chọn ứng dụng và thiết bị bạn muốn tạo mật khẩu ứng dụng. Ở đây,
- Phần Chọn ứng dụng bạn click vào và chọn Thư
- Phần Chọn thiết bị bạn chọn là gì cũng được, ở đây mình chọn là Máy tính dùng Widnows.
Sau đó ấn Tạo để tạo mật khẩu ứng dụng.

Bước 3: Google sẽ cấp cho bạn một mật khẩu, đó chính là mật khẩu SMTP của Gmail. Bạn hãy chọn và copy nó để dùng ở bước dưới.

Như vậy là bạn đã hoàn thành việc thiết lập Gmail cho SMTP và thay thế tài khoản vào đoạn code vừa xong:
$phpmailer->Username = ‘Email bạn dùng đăng ký mật khẩu ứng dụng’;
$phpmailer->Password = ‘Mật khẩu ứng dụng Gmail’;
Xong…..Nếu làm theo các bước trên mà vẫn chưa làm được có thể liên hệ hoặc chát trực tiếp mình sẽ giúp đỡ….đừng ngại.