欢迎光临 - 我的站长站,本站所有资源仅供学习与参考,禁止用于商业用途或从事违法行为!

帝国cms教程

帝国cms二次开发用户反馈自动发送邮件给管理员邮箱

帝国cms教程 我的站长站 2023-12-02 共108人阅读

用户前台反馈内容,管理员无法第一时间知道,就无法第一时间处理用户的问题,我们可以简单的二次开发,来达到用户反馈自动发送邮件给管理员邮箱。

二次开发步骤

1、首先配置好帝国cms后台的邮件功能,不会的看下面SMTP配置教程。我的站长站用的465端口测试成功,25端口没测试。

帝国cms二次开发用户反馈自动发送邮件给管理员邮箱
邮件配置截图

相关参考

2、然后我们还需要去系统设置里面填写一个接收邮件的邮箱,调用的系统设置的管理员邮箱字段内容。

帝国cms二次开发用户反馈自动发送邮件给管理员邮箱
管理员邮箱截图

3、打开/e/class/SendEmail.inc.php文件,拖到文件最顶部,在文件最后“?>”之前加上以下发送邮件函数。

    //给管理员信箱发送通知邮件新增函数
      function SendNoticeToAdmin($subject,$body){
        global $empire,$dbtbpre;
        $empire=new mysqlquery();
        $pr=$empire->fetch1("select email from {$dbtbpre}enewspublic limit 1");
        if(is_array($body)){
                foreach($body as $value){
                        $key=key($body);
                        next($body);
                        $msgtext .= "$key:"."$value"."\n";
                }
        }else{
                $msgtext=$body;
        }
        $msgtext .= "\r\n\r\n此邮件由系统自动发出,请管理员尽快处理\n\r";
        $sm=EcmsToSendMail($pr['email'],$subject,$msgtext);
        return $sm;
       }

4、打开/e/class/q_functions.php,增加发送邮件触发事件,搜索找到

$reurl=DoingReturnUrl("../tool/feedback/?bid=$bid",$add['ecmsfrom']);

在这一行前面加上:

@include("SendEmail.inc.php");
SendNoticeToAdmin("收到来自".$add['name']."的信息反馈",$add);

就此用户反馈自动发送邮件给管理员邮箱的帝国cms二次开发就完成了。