wp_mail() 函数用来发送邮件,类似于 PHP 的 mail() 函数。
默认的发件人名称是 wordpress,发件人邮箱是类似 wordpress@example.com。
用法
PHP;">
wp_mail( $to,$subject,$message,$headers,$attachments );
参数
$to
(字符串 | 数组)(必须)收件人。多个收件人可以使用数组或者以逗号分隔邮箱的字符串。
默认值:None
$subject
默认值:None
$message
默认值:None
$headers
(字符串 | 数组)(可选)邮件 Headers 信息。可以是数组,也可以是以回车分隔的字符串(格式:name: content)。
默认值:空字符串
$attachments
(字符串 | 数组)(可选)邮件附件。多个附件可以使用数组或者以回车分隔的字符串。
默认值:空字符串
返回值
(布尔)返回是否成功发送邮件。
例子
最基本的邮件发送:
PHP;">
wp_mail( 'me@example.net','The subject','The message' );
附件和 headers 信息:
PHP;">
$attachments = array( WP_CONTENT_DIR . '/uploads/file_to_attach.zip' );
$headers = 'From: My Name ' . "rn";
wp_mail( 'test@example.org','subject','message',$attachments );
Html 邮件和一次发送多个邮箱:
PHP;">
$multiple_to_recipients = array(
'recipient1@example.com','recipient2@foo.example.com'
)
wp_mail( $multiple_to_recipients,'
The HTML message
','Content-Type: text/html' );其它
此函数位于:wp-includes/pluggable.PHP
解决邮件无法发送的问题
邮件无法发送是 wordpress 比较常见的一种问题,一般是由于服务器不支持 PHP 的 mail() 函数造成的,通常有两种解决方法。PS:wordpress 发送邮件一定要使用 wp_mail() 函数,而不是直接调用 PHP SMTP 类或者其它函数。
一、配置服务器环境
如果你使用的是 VPS,可以通过配置服务器的方式让服务器支持 mail() 函数,根据每个人的情况不同可以通过搜索引擎找到配置方法,这里就不详细说了。
二、使用 SMTP
第二种就是用 SMTP 发送邮件了,也是我比较推荐的一种方法。SMTP 就是利用其它的免费邮件服务商的服务器发送邮件,所以用这种方式还不容易被识别成垃圾邮件。
好了,让 wordpress 支持 SMTP 推荐的是使用 WP SMTP 插件,安装好后在后台配置一下你的 SMTP 信息,我使用的是 QQ 邮箱。
配置好后可以在下边测试一下是否配置成功。