这几天将wordpress修改为多站点,发现邮件无法使用,而且原来就了解到使用mail()发邮件可能会被大部分邮箱接收为垃圾邮件,于是将wordpress默认的 mail() 发邮件改为了smtp 方式 修改方法请参考 wordpress发送邮件mail()函数修改为smtp
现在按道理来讲注册,密码重置都应该正常才对,可是出现了问题, 经过验证, 后台操作能够正常给用户发送邮件, 重置密码能够正常发送邮件, 但是这个多站点的注册就是发送不出去, 在网上根本找不到资料,于是自己研究了2天, 这里将经验分享出来,为后面的站长提供帮助。
目前我遇到的这个情况是在使用 wp_mail()的时候出现的问题。
在使用wp-signup.php 地址的时候,发邮件通知使用的文件是wp-includes/ms-functions.php
wp_mail( $user_email, wp_specialchars_decode( $subject ), $message, $message_headers );
这个信息无法正常发送邮件修改为
wp_mail( $user_email, wp_specialchars_decode( $subject ), $message );
就能够正常发送和接收到邮件了,当然这里你会发现上面这个代码使用了很多次, 这就需要您根据个人需要看修改哪个了, 如果你只需要修改用户注册,和给用户发送密码的地方只需要修改 wpmu_signup_user_notification 和 wpmu_welcome_notification 两个函数下面的就可以了, 这个就要看个人需求了,这里不再多介绍
(1300)