咱中国的很多服务器都不配备邮件服务器,通常需要smtp来发送邮件。也有很多wordpress插件可以赋予smtp功能。如果不想用插件那应该怎么办呢?下面的代码可以借鉴:
<?php
// 修改phpmailer默认参数
add_action('phpmailer_init', 'mail_smtp');
function mail_smtp($phpmailer)
{
$phpmailer->IsSMTP();
$phpmailer->SMTPAuth = true;
$phpmailer->Host = '';
$phpmailer->Port = 994;
$phpmailer->SMTPDebug = 0;
$phpmailer->CharSet = "UTF-8";
$phpmailer->FromName = '';
$phpmailer->Username = '';
$phpmailer->Password = '';
$phpmailer->From = '';
$phpmailer->SMTPSecure = 'ssl';
$phpmailer->IsHTML(true);
}
add_action('wp_mail_failed', 'log_mailer_errors', 10, 1);
// 发送失败时生成log文件
function log_mailer_errors($wp_error)
{
$fn = ABSPATH . '/mail.log';
$fp = fopen($fn, 'a');
fputs($fp, "Mailer Error: " . $wp_error->get_error_message() . "\n");
fclose($fp);
}
// 设置默认发件人
add_filter('wp_mail_from', function () {
return '***@*****.***';
});
评论区
发表新的留言
您可以留言提出您的疑问或建议。
您的留言得到回复时,会通过您填写的邮箱提醒您。