织梦dedecms实现系统评论邮件通知的方法

一、实现方法 第一步: 打开默认ajax评论文件 /plus/feedback_ajax.php ,找到如下代码: $_SESSION [ 'sedtime' ]=time(); 在下面一行加入如下代码: $doType = empty empty ( $fid )? 'feedback' : 'reply' ; doCommentEmail( $fid , $aid , $msg , $doTyp

一、实现方法

第一步:打开默认ajax评论文件 /plus/feedback_ajax.php ,找到如下代码:

  1. $_SESSION['sedtime'] = time(); 

在下面一行加入如下代码:

  1. $doType = emptyempty($fid) ? 'feedback' : 'reply';   
  2. doCommentEmail($fid$aid$msg$doType);  

第二步:打开 /include/extend.func.php 文件,在最后一行或者?>之前加入如下代码:

 

  1. function doCommentEmail($fid=0, $aid=0, $msg=''$doType='reply'){  
  2. global $dsql$cfg_adminemail$cfg_sendmail_bysmtp$cfg_smtp_server$cfg_smtp_port$cfg_smtp_usermail$cfg_smtp_password$cfg_webname$cfg_basehost;    
  3. $arcRow = GetOneArchive($aid);  
  4. $headers = "From: ".$cfg_adminemail."\r\nReply-To: ".$cfg_adminemail;  
  5. if($doType == 'reply'){  
  6. $query = "SELECT f.*,m.uname,m.email FROM dede_feedback f LEFT JOIN dede_member m on f.mid = m.mid WHERE f.id = '{$fid}' AND mid > 0";  
  7. $row = $dsql->GetOne($query);  
  8. if(!is_array($row)) return '';  
  9. $email = $row['email'];  
  10. $mailtitle = "您在『{$cfg_webname}』的评论已被回复";  
  11. $mailbody = "{$row['uname']},您好:\r\n您在{$cfg_webname}的评论已被人回复!<pre>{$msg}</pre><br/><a href='{$arcRow['arcurl']}'>点击这里查看详情</a>";  
  12. }else{  
  13. $email = $cfg_adminemail;  
  14. $mailtitle = "您的网站『{$cfg_webname}』有新的评论";  
  15. $mailbody = "网站管理员,您好:<br/>\r\n您的网站《{$cfg_webname}》有新的评论!<pre>{$msg}</pre><br/><a href='{$cfg_basehost}'>点击这里查看详情</a>";  
  16. }  
  17. if($email == ''return '';  
  18. if($cfg_sendmail_bysmtp == 'Y' && !emptyempty($cfg_smtp_server))  
  19. {  
  20. $mailtype = 'HTML';  
  21. require_once(DEDEINC.'/mail.class.php');  
  22. $smtp = new smtp($cfg_smtp_server,$cfg_smtp_port,true,$cfg_smtp_usermail,$cfg_smtp_password);        $smtp->debug = false;  
  23. $smtp->sendmail($email,$cfg_webname ,$cfg_smtp_usermail$mailtitle$mailbody$mailtype);  
  24. }  
  25. else 
  26. {  
  27. @mail($email$mailtitle$mailbody$headers);  
  28. }}  

第三步:配置后台邮件发送信息,进入网站后台,切换到『系统』选项卡,点击「系统基本参数」的“核心设置”,将里面的“网站发信EMAIL”、“是否启用smtp方式发送邮件”、“smtp服务器”、“smtp服务器端口”、“SMTP服务器的用户邮箱”、“SMTP服务器的用户帐号”和“SMTP服务器的用户密码”配置好即可。

二、注意事项

1.您的服务器必须支持邮件发送;
2.您必须配置好系统设置里的邮件发送账户信息;
3.理论上本教程支持DedeV5.3及以上所有版本。

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

dedecms织梦默认的TAG标签不是很灵活。有时候我们的标签需要进行一个分类,能不能像{dede:arclist}标签的自定义属性(如:flag=c,h),这样全站调用的时候更灵活。 全站调用TAG标签方法一般是: {dede:tag row='100' sort='new' getall='1'}a target="_blank
未审核文档的TAG会显示在TAG列表页面, 固然点击进入TAG时, 相关的未审核文章不会显示出来, 这样对用户体验是很不好的. DEDECMS暂时没有提供这个功能,所以要解决这个问题, 让DEDECMS不显示未审核文档的TAG, 就要修改TAG的显示库文件 tag.lib.php。 方法一 打
我们都知道DEDECMS生成的文件夹是按天生成的,只要传了图片就会自动建立个年月日的文件,centos系统下,都是随便排序的,很难找到对应文件夹,如果要按顺序排列,要怎么操作呢? 一、文件管理器: 修改 /dede/templets/file_manage_main.html $dh = dir($inp
我们有时候需要对织梦文档的点击量进行批量维护,比如采集来的文章,点击量都为0,需要批量修改,可以用到如下方法1。 1、在数据库里运行下面的代码就可以了,文章的点击量变得随机从500到1000 UPDATE dede_archives SET click=FLOOR(500 + (RAND() * 1000))
用过dedecms的朋友都知道,织梦cms后台系统基本参数里是无法直接上传图片的,我们更换logo图只能到ftp里替换,非常的不方便,我们如果想直接在系统基本参数里上传,要怎么处理呢?在这里需要对代码进行修改,具体流程如下: 实现方法,打开/dede/templets/sy
dedecms要想调用所有子栏目是没有这个标签的,要调用只可用sql标签,reid表示子栏目,channeltype=6表示模型为商品,sortrank表示按排序升序.小的放前面 {dede:sql sql=Select * from `dede_arctype` where reid0 and channeltype=6 ORDER BY sortrank limit 15}