Lại tiếp tục lần nữa với chủ đề “Gửi email”, dạo tự nhiên có hứng thú với mấy cái này hihi. Bản thân WordPress đã có tích hợp sẵn PHPMailer, tuy nhiên mặc định WordPress vẫn gửi thông qua hàm Mail() mặc định của PHP. Tức dùng lệnh IsMail của PHPMailer ấy, xem bài trước để biết thêm thông tin về lệnh này:
Gửi eMail từ PHP thông qua SMTP với PHPMailer
và bài viết về hàm php Mail():
Mail() Function – gửi email tiện lợi với PHP
Giới thiệu về plugin WP Mail SMTP
Để ép WordPress phải gửi bằng SMTP ta sẽ phải chỉnh sửa đôi chút trong tệp tin wp-includes/class-phpmailer.php. Việc này tương đối nguy hiểm, và thường thì cũng bị mất khi WordPress cập nhật phiên bản mới.
Do đó mình xin đề cử một Plugin mang tên WP Mail SMTP. Bạn có thể vào mục Plugins trong Admin Panel trên WordPress của mình để search và cài đặt. Hoặc tải trực tiếp tại:
Tải plugin WP Mail SMTP
Với plugin này sẽ giúp ta tùy chỉnh lại các thông số của PHPMailer để gửi email bằng SMTP mà không cần phải nội soi mã nguồn của WordPress. Một số chức năng của plugin:
- Tùy chỉnh tên, địa chỉ người gửi và địa chỉ nhận trả lời (reply)
- Chọn giữ gửi mail bằng SMTP hay mail() function của PHP.
- Tùy chỉnh SMTP host (mặc định là localhost).
- Tùy chỉnh SMTP port (mặc định là 25).
- Có thể bật giao thức mã hóa SSL / TLS nếu bạn muốn.
- Hỗ trợ đăng nhập vào SMTP (có thể tắt nêu không yêu cầu đăng nhập)
Hướng dẫn cài đặt thông số.
Sau khi cài đặt bạn hãy vào trang quản lí -> Settings -> Email để tiến hành thiết lập thông số cho wordpress của mình. Bạn có thể tùy chỉnh địa chỉ người gửi, và tên người gửi. Nếu muốn kiểm tra thư gửi ra có đến tay người nhận không, bạn hãy check vào mục Return Path.

Kế đến thiết đặt các thông số cho SMTP. Quan trọng nhé, xem hình:

Nếu máy chủ SMTP bắt đăng nhập thì check vào yes, ngược lại không cần đăng nhập thì check vào no. Nếu có hỗ trợ giao thức bảo mật SSL thì check luôn cho email nó được bảo mật tí, không có hỗ trợ thì check vào No encryption. Okê, save tất cả thiết lập lại ấn vào nút Save Changes.
Để đảm bảo rằng chức năng gửi mail đã được config chính xác, bạn có thể gửi thử một email để kiểm tra.

Nếu nhận được email trong hộp thư bạn đã điền, tức là các thông số mới đã được điều chỉnh chính xác. Bây giờ wordpress của bạn đã hoàn toàn gửi email đi bằng SMTP. Tạm biệt hàm Mail() nào
Hiện plugin này tương thích với phiên bản mới nhất của WordPress, bản 3.2.1. Và mình đang dùng nó cho blog của mình đây. Bạn cũng vậy nhé! chúc bạn thành công



16/09/2011 lúc 11:50 am
em hỏi 1 câu dại dột, vì nghe nó nhiều , nhưng ko biết thế máy chủ của SMTP là ai nhỉ?
16/09/2011 lúc 12:11 pm
SMTP là một giao thức để thao tác với email. Máy chủ SMTP tức ám chỉ máy chủ dùng để gửi nhận email qua giao thức SMTP. Mọi người có thể đăng nhập vào máy chủ này và gửi email.
SMTP không của ai cả, nếu có máy chủ riêng cậu cũng có thể cài dịch vụ SMTP lên máy chủ của mình, thế là cậu cũng có một máy chủ SMTP cho riêng mình để gửi email.
Nếu không có máy chủ riêng, cậu có thể thuê dịch vụ SMTP của những nhà cung cấp. Hiện tại thì máy chủ SMTP của GMail là hoạt động công khai và miễn phí, chỉ cần có một tài khoản Google là bạn có thể dùng dịch vụ SMTP của Gmail. Đôi khi mua host, nhà cung cấp cũng cho cậu một tài khoản SMTP trên server của họ để dùng, trong trường hợp họ tắt hàm mail()
Hiểu nôm na có thể nói SMTP là một dịch vụ email, tương tự như HOST là một dịch vụ lưu trữ web.
16/09/2011 lúc 2:54 pm
Great blog!! You should start many more. I love all the info provided. I will stay tuned
16/09/2011 lúc 3:08 pm
Thanks, i will
22/09/2011 lúc 10:12 am
Đặt lại liên kết dùm mình thành http://toivn.com thay vì http://dinhcuongblog.com nhé.
Thanks.
22/09/2011 lúc 2:43 pm
Đã sửa. Tiếp tục hợp tác nhé
04/11/2011 lúc 11:58 am
có nghe gian hồ đồn chiêu này, nhưng e chưa có nhu cầu xài tới… Dù sao cũng thanks bác nhiều, lưu lại đề có j dùng tới…
30/12/2011 lúc 2:48 am
Bác cho mình hỏi tý, cái này có sử dụng cho việc spam email được không
03/01/2012 lúc 4:24 pm
nêu spam thì dùng hàm mail của php chắc cũng là quá đủ. Do đặc tính của gửi thông qua SMTP có thể gửi một lượt cho hàng loạt địa chỉ email cùng lúc + gửi gián tiếp bằng máy chủ người khác nên chắc SMTP spam sẽ có phần dữ dội hơn và tỉ lệ vào Spam box sẽ thấp hơn đôi chút so với mail của php.
03/01/2012 lúc 5:41 pm
chào bạn MINHNHAT,
Mình có thể trao đổi liên kết với site của ban không.Mình đang thiết kế một trang bài tập tiếng anh.Hi vọng được hợp tác với bạn
14/01/2012 lúc 2:12 pm
Rất hân hạnh, site của bạn là gì?
06/06/2012 lúc 2:33 pm
BẠN ƠI, BLOG CỦA BẠN THẬT TUYỆT.
MÌNH CŨNG MUỐN LÀM 1 CÁI NHƯNG KHÓ QUÁ!
MÌNH CÓ CÍA ĐỊA CHỈ BLOG CỦA MÌNH MONG BẠN CHỈ GIÁO NHÉ.
CÁM ƠN NHIỀU.
06/06/2012 lúc 2:36 pm
BẠN ƠI, BLOG CỦA BẠN THẬT TUYỆT.
MÌNH CŨNG MUỐN LÀM 1 CÁI NHƯNG KHÓ QUÁ!
MÌNH GỞI CÁI ĐỊA CHỈ BLOG CỦA MÌNH CHO BẠN MONG BẠN CHỈ GIÁO NHÉ.
CÁM ƠN NHIỀU.
18/06/2012 lúc 8:20 pm
Mình dùng host của GoDaddy, ko thành công.
Minh khai báo với gmail.
- smtp.gmail.com
- 456
- Use SSL encryption.
- Yes: Use SMTP authentication.
18/06/2012 lúc 8:23 pm
NHầm – cổng mình đặt là 465.
Ko tài nào đc ! Hic.
21/06/2012 lúc 11:42 am
Lỗi báo về là gì, bạn có thể cóp ra cho mình xem được không.
29/06/2012 lúc 2:44 pm
Chào bạn, mình cũng biết tới plug-in này và đã cài đặt thành công ở các host mình đặt mua, còn trường hợp localhost, chạy với xampp thì mình không biết còn phải cấu hình ở đâu trong xampp nữa không? Vấn đề này bạn đã gặp qua chưa và có thể hỗ trợ mình được không?
Thank bạn!
01/07/2012 lúc 9:18 am
Cái này chủ yếu dùng khi host không có bật hàm mail(). Nếu host hỗ trợ bạn cũng không cần thiết phài dùng plug-in này.
Đối với localhost dùng xampp. Chỉ cần bật CURL là plugin này đã có thể chạy ngon lành. Bản thân XAMPP đã bật tính năng này, do đó bạn cứ sử dụng bình thường không cần hiệu chỉnh thêm điều gì. Còn tình trạng không kết nối được thì bạn xem lại trình diệt virus trên máy và cấu hình firewall của windows để đảm bảo là kết nối từ máy bạn, cụ thể hơn là từ xampp đến server smtp không bị chặn.
20/07/2012 lúc 12:16 pm
Bạn cho mình hỏi, có cách nào để gửi email chứa password đến cho người dùng mới đăng kí không hả bạn.
Mình xin cảm ơn
20/07/2012 lúc 1:39 pm
Bạn dùng wordpress hay code tự viết? để mình có thể hướng dẫn chi tiết cho bạn.
07/08/2012 lúc 3:47 pm
Mình cũng dùng wp! nhưng không biết gửi mail qua SMTP thế nào cả
03/09/2012 lúc 9:21 am
Mình tích hợp luôn cài PHPMailer vào trong giao diện, thế là gửi mail ok hết.
Sáu Hỉ vừa viết bài..Lập trình PHP: Cắt chuỗi Tiếng Việt
04/09/2012 lúc 11:06 am
Nếu có mail() rồi thì khỏi cần dùng cái này, SH. Cái này nó hơi bị ì ạch
Minh Nhựt vừa viết bài..20 bài Tutorial rất hay về jQuery Mobile trong năm 2012
25/09/2012 lúc 6:01 pm
Thông thường mình dùng của những nhà cung cấp host như matbao.net thi có sẵn cái này, nhưng khi chuyển qua tenten.vn thi việc gui thu từ host không hoạt động được. Vì vậy không thể cho phép người dùng đăng ký thành viên vào blog của mình. Nhờ bác chỉ giáo dùm.
Hải Quảng vừa viết bài..Cấu tạo tế bào nhân sơ
25/09/2012 lúc 6:25 pm
Cậu có thể dùng plugin trên bằng SMTP của Gmail
26/09/2012 lúc 10:50 am
Mình đã thử cái này cho host và gmail nhưng không thành công bạn ah.
Hải Quảng vừa viết bài..Con bạn thông minh kiểu gì?
27/09/2012 lúc 11:40 pm
không gửi được email lun à bạn. Bạn có thử gửi test email không?
28/09/2012 lúc 8:32 pm
Mình đã làm được với máy chủ smtp@gmail.com và SMTP Port: 587
Vngiasu.net vừa viết bài..Cơ chế biến dị và di truyền – 1
10/03/2013 lúc 7:36 pm
Sao mình thiết lập email thế này, thử gửi comment thì load rất lâu… Liệu có phải nguyên nhân từ Plugin này không bạn>?
11/03/2013 lúc 2:20 pm
Còn do kết nối giữa host với SMTP server nữa bạn à. Plugin này chỉ kích hoạt tính năng SMTP (vốn có trong WordPress rồi) nên chắc không phải nguyên nhân từ plugin này đâu.
11/03/2013 lúc 9:06 pm
Mình kết nói với Gmail, thử tắt Plugin này đi thì comment nhanh hơn rất nhiều, bật nó lên thì thôi rồi… Load chậm khó tả, có khi còn đứt kết nối…. Đang không biết nên phải làm thế nào để giải quyết vấn đề này bạn ak?
12/03/2013 lúc 12:56 pm
Trước tiên bạn phải hiểu là Plugin này dùng một máy chủ trung gian để gửi email khi mà host không hỗ trợ cho bạn dùng hàm gửi mail của PHP. Nếu bạn có thể gửi mail bình thường thì chẳng cần plugin này làm gì. Vì vậy bạn gỡ plugin này đi nếu thấy không cần thiết. Thân.