WordPress中邮件的一些修改和自定义技巧

yipeiwu_com5年前PHP代码库

更改邮件内容类型为 HTML
在 WordPress 中发送邮件需要使用 wp_mail() 函数,但是邮件内容默认的类型却是“text/plain”,也就是不支持 HTML。

如果你想要在邮件内容中添加 HTML 代码,除了发送“Content-Type: text/”的 headers 信息之外,还可以利用过滤器统一修改。

/**
  *WordPress 更改邮件内容类型为 HTML
  *http://www.endskin.com/mail-content-type-html/
*/
function Bing_set_html_content_type_html(){
  return 'text/html';//可以自定义类型
}
add_filter( 'wp_mail_content_type', 'Bing_set_html_content_type_html' );

这样,邮箱的内容默认就支持 HTML 代码了。

自定义邮件的发送邮件和发件人
使用 SMTP 插件的时候可以自定义邮件的发件人和邮件,这里就有了一个问题,如果没有使用 SMTP 插件怎么自定义邮件的发件人和发件邮箱呢?

默认情况下,发件人是 “WordPress < wordpress@example.com  >”,这样用户无法直接回复,而且很容易被判断成垃圾邮件,导致用户收不到。

如果要修改发件人和发件人邮箱,只需要使用一段小代码即可,放到 functions.php(了解更多) 里:

/**
  *WordPress 自定义邮件发送邮件和发件人
  *http://www.endskin.com/change-mail-from-info/
*/
//发件人
function Bing_wp_mail_from_name(){
  return '斌果';//可自行修改
}
add_filter( 'wp_mail_from_name', 'Bing_wp_mail_from_name' );
 
//发送邮件
function Bing_wp_mail_from(){
  return 'admin@endskin.com';//可自行修改
}
add_filter( 'wp_mail_from', 'Bing_wp_mail_from' );

相关文章

PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法

问题: php函数date("Y-n-d   H-i-s");   输出的时间与当地时间相差8个小时. 解决思路 北京时间是东8区,可能是时区问...

php5.3 不支持 session_register() 此函数已启用的解决方法

php从5.2.x升级到5.3.2.出来问题了。有些原来能用的程序报错了。报错内容是Deprecated: Function session_register() is deprecat...

10条PHP编程习惯助你找工作

过去的几周对我来说是一段相当复杂的经历。我们公司进行了大裁员,我是其中之一,但却体验到了其中的乐趣。我从来没有被开除过,所以很难不去想得太多。我开始浏览招聘板块,一个全职PHP程序员的职...

简单谈谈php浮点数精确运算

bc是Binary Calculator的缩写。bc*函数的参数都是操作数加上一个可选的 [int scale],比如string bcadd(string $left_operand,...

php 计划任务 检测用户连接状态

计划任务 复制代码 代码如下: ignore_user_abort(); // 用户关闭浏览器程序依然执行 set_time_limit(0); // 不限制程序运行时间 $interv...