帝國CMS 內建留言板功能,但預設不支援管理員回覆後自動寄信通知留言者。本文記錄修改核心檔案的步驟,實現「回覆時可選擇是否發送 Email」的功能。
e/admin/tool/ReGook.php<input name="email" type="hidden" id="email" value="<?=$r['email']?>"> /* 取用戶 Email */ <input name="lytext" type="hidden" id="lytext" value="<?=$r['lytext']?>"> /* 取用戶留言內容 */
<tr bgcolor="#FFFFFF">
<td height="25">通知書友:</td>
<td height="25">
<input name="checked[]" type="checkbox" id="checked[]" value="" title="發 Email 通知書友" style="background:#99C4E3">
<span style="color:red"> 書友Email:<?=$r['email']?> </span>
</td>
</tr>
e/admin/tool/gbook.phpinclude("../../class/SendEmail.inc.php");
$enews=="ReGbook" 判斷區塊(約第 30 行),原碼:elseif($enews=="ReGbook") {
$lyid=$_POST['lyid'];
$bid=$_POST['bid'];
$retext=$_POST['retext'];
ReGbook($lyid,$retext,$bid,$logininid,$loginin);
}
elseif($enews=="ReGbook") {
$lyid=$_POST['lyid'];
$bid=$_POST['bid'];
$retext=$_POST['retext'];
$email=$_POST['email'];
$lytext=$_POST['lytext'];
$checked=(int)$_POST['checked']; // 核取方塊值
if($checked) { // 若勾選發送
EcmsToSendMail($email,$lytext,$retext); // 呼叫發信函式
}
ReGbook($lyid,$retext,$bid,$logininid,$loginin);
}
SendEmail.inc.php 內的 EcmsToSendMail() 函式參數順序:($to_email, $lytext, $retext)。透過簡單的兩個檔案修改,即可賦予帝國CMS 留言板「回覆通知」功能,提升用戶互動體驗。