新訂單、新反饋信息、新投稿 各種場(chǎng)景 各種給管理員發(fā)通知郵件
帝國(guó)不知道從什么時(shí)候就引入了一個(gè)發(fā)送郵件類,還可以在后臺(tái)設(shè)置管理員郵箱,和發(fā)送郵件的相關(guān)參數(shù),但是準(zhǔn)備了這么多材料,實(shí)際上系統(tǒng)用到的機(jī)會(huì)不多,大約只在會(huì)員注冊(cè)驗(yàn)證、會(huì)員重置密碼,和管理員向會(huì)員發(fā)送消息時(shí)用到了郵件功能。實(shí)際上帝國(guó)這么多功能,在很多關(guān)鍵位置如果能增加一個(gè)給管理員發(fā)送通知郵件的功能,那會(huì)使管理員帶來很大的方便,起碼不用一直掛著后臺(tái)了。由于帝國(guó)已經(jīng)支持發(fā)送郵件了,所以這些功能實(shí)現(xiàn)起來很簡(jiǎn)單,有需要的同學(xué)可以參考一下。
一、設(shè)置管理員郵件地址和發(fā)郵參數(shù)
后臺(tái),系統(tǒng)設(shè)置,系統(tǒng)參數(shù)設(shè)置
基本屬性標(biāo)簽:管理員郵箱。以后的通知郵件都會(huì)發(fā)到這一郵箱
FTP/EMAIL標(biāo)簽:如果主機(jī)支持mail函數(shù),則個(gè)人感覺用這個(gè)效率可能高一點(diǎn),主機(jī)不支持的話也沒關(guān)系,還可以用SMTP,設(shè)置方法跟郵件客戶端一樣。
需要說明的是,如果想用gmail的帳號(hào)發(fā)送實(shí)現(xiàn)起來比較麻煩,gmail的smtp需要ssl,且不說帝國(guó)自帶的郵件發(fā)送類不支持ssl,就是帝國(guó)后臺(tái)設(shè)置郵件的地方也沒有提供ssl選項(xiàng),所以就不折騰了,用國(guó)內(nèi)的郵箱帳號(hào)發(fā)就是了。
二、新增給管理員發(fā)郵件的函數(shù)
找到e/class/SendEmail.inc.php,結(jié)尾下加入以下代碼
//給管理員信箱發(fā)送通知郵件新增函數(shù)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此郵件由系統(tǒng)自動(dòng)發(fā)出,請(qǐng)管理員盡快處理/n/r"; $sm=EcmsToSendMail($pr['email'],$subject,$msgtext); return $sm;}
三、給管理員發(fā)郵件,以下是不同的場(chǎng)景,可以根據(jù)需要自由修改
1.有新訂單時(shí)
修改e/enews/index.php,在大約184行
AddDd($_POST);
在這一行前面加上
@include("../class/SendEmail.inc.php"); SendNoticeToAdmin("有新訂單!訂單號(hào)".$_POST[ddno],$_POST);
完活,這只是起到一個(gè)提醒功能,所以郵件界面什么的就不用考慮了,管理員收到郵件后去帝國(guó)后臺(tái)處理就是了。
2.有新的投稿時(shí)
修改e/class/qinfofun.php,在大約850行
printerror("AddQinfoSuccess",$reurl,1);
在這一行前面加上
@include('SendEmail.inc.php'); SendNoticeToAdmin("收到來自".$add['title']."的投稿",$add);
3.有新的信息反饋時(shí)
修改e/class/q_functions.php,在大約468行
$reurl=DoingReturnUrl("../tool/feedback/?bid=$bid",$add['ecmsfrom']);
在這一行前面加上:
@include("SendEmail.inc.php"); SendNoticeToAdmin("收到來自".$add['title']."的信息反饋",$add);
4.有新留言時(shí)
修改e/enews/index.php,在大約215行
AddGbook($_POST);
在這一行前面加上:
@include("../class/SendEmail.inc.php"); SendNoticeToAdmin("收到新留言",$_POST);
5.有會(huì)員在網(wǎng)站上注冊(cè)(如果是注冊(cè)需要審核,收到這封郵件管理員可以及時(shí)去后臺(tái)審核)
修改e/enews/index.php,在大約74行
register($username,$password,$repassword,$email);
在這一行前面加上
@include('../class/SendEmail.inc.php'); SendNoticeToAdmin("新會(huì)員注冊(cè),用戶名:".$username,$_POST);
6.網(wǎng)站后臺(tái)啟用注冊(cè)需要郵箱驗(yàn)證,驗(yàn)證通過后會(huì)員會(huì)收到一封歡迎信
由于這個(gè)郵件是給會(huì)員看的,所以內(nèi)容格式排版上就要講究一下了
(1)在e/class下新增一條文件,命名user_template_register.txt,內(nèi)容如下(僅供參考,可自行修改)
歡迎[!---USERNAME--]注冊(cè)本網(wǎng)站。
(2)修改e/class/qmemberfun.php,在大約188行
printerror('ActUserSuccess',$public_r['newsurl'],1);
在這一行前面加上
@include('SendEmail.inc.php'); $msgtext=file_get_contents("user_template_register.txt"); $msgtext=str_replace('[!---USERNAME--]',$r[username],$msgtext); EcmsToSendMail($r[username],"歡迎注冊(cè)",$msgtext);
此久,還有一些場(chǎng)景也需要用到郵件,比如
1)網(wǎng)站沒有啟用郵箱驗(yàn)證,但是會(huì)員注冊(cè)后需要管理員手工審核,審核通過后會(huì)員會(huì)收到一封歡迎信
2)商城系統(tǒng),會(huì)員下單后會(huì)實(shí)時(shí)收到郵件通知,訂單通過審核后,也會(huì)再給客戶一封郵件
實(shí)現(xiàn)起來都不難,有需要的自己加上就是了
版權(quán)聲明: 本站資源均來自互聯(lián)網(wǎng)或會(huì)員發(fā)布,如果侵犯了您的權(quán)益請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)刪除!謝謝!
轉(zhuǎn)載請(qǐng)注明: 帝國(guó)CMS新訂單、新反饋信息、新投稿 各種場(chǎng)景 各種給管理員發(fā)通知郵件