让代码更简单

免费邮件不够用?修改WP SMTP插件实现多邮箱配置

重要:本文最后更新于2019-10-08 08:46:40,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

很大一部分wordpress个人站长使用的都是免费企业邮箱,这种邮箱发信一般都有限制,大概一天200封左右。对于某些较为牛逼的站长来说数量有点不大够用,比如缙某某的博客,日活跃1W+用户,免费邮件服务就不够用,但又不想花钱买,于是通过多账号切换的方式来解决邮件数量不够的问题。

本教程基于WP SMTP插件修改,去除插件后台配置功能(嫌麻烦),启用即可生效。

实现步骤

打开wp smtp插件目录,没有这个插件的自己去下载一个即可。然后打开wp-smtp.php文件,在WP_SMTP类中添加一个名为ChooseAccount的方法,具体内容如下:

复制
public function ChooseAccount()
    {
        $Account = array(
            array(
                "from" => "smtp1@domain.org",
                "fromname" => "自动发信测试1",
                "host" => "smtp.ym.163.com",
                "smtpsecure" => "ssl",
                "port" => "994",
                "smtpauth" => "yes",
                "username" => "smtp1@domain.org",
                "password" => "12345656",
            ),
            array(
                "from" => "smtp2@domain.org",
                "fromname" => "自动发信测试2",
                "host" => "smtp.ym.163.com",
                "smtpsecure" => "ssl",
                "port" => "994",
                "smtpauth" => "yes",
                "username" => "smtp2@domain.org",
                "password" => "12324354",
            ),
            array(
                "from" => "smtp3@domain.org",
                "fromname" => "自动发信测试3",
                "host" => "smtp.ym.163.com",
                "smtpsecure" => "ssl",
                "port" => "994",
                "smtpauth" => "yes",
                "username" => "smtp3@domain.org",
                "password" => "123423544567",
            ),
        );
        date_default_timezone_set("PRC");
        $hour = date("H");
        switch ($hour) {
            case "00":
            case "01":
            case "02":
            case "03":
            case "04":
            case "05":
            case "06":
            case "07":
                $account = $Account[0];
                break;
            case "08":
            case "09":
            case "10":
            case "11":
            case "12":
            case "13":
            case "14":
            case "15":
                $account = $Account[1];
                break;
            case "16":
            case "17":
            case "18":
            case "19":
            case "20":
            case "21":
            case "22":
            case "23":
                $account = $Account[2];
                break;
            default:
                $account = $Account[0];
        }
        return $account;
    }

上面的代码首先声明了一个二维数组,里面存储了我们需要切换的发信邮箱账号,我这里只写了3个账号,大家可以根据自己需求修改。然后通过判断当前小时来选择对应的发信账号。

测试效果如下:

免费邮件不够用?修改WP SMTP插件实现多邮箱配置

免费邮件不够用?修改WP SMTP插件实现多邮箱配置

为防止伸手党,我就不提供源码了,需要的自己照着上面的步骤修改即可。

感觉很棒!可以赞赏支持我哟~

1 打赏

评论 (4)

登录后评论
哈哈,按照时间调用,不错的想法!
欢迎大佬!
这开头也太明显了,把我的死扣扣无限放大?
文章不错非常喜欢
QQ咨询 邮件咨询 狗哥推荐