php中有很多自定义的字段,在网页中直接输出对应的代码就可以了,但是有时候修改起来就比较麻烦,很不好找,下面是我在企业黄页中修改标题内容时遇到的一个问题,希望可以帮到需要的人。
1.首先要找到phpcms/templates/模板中对应的html文件read.html;
标题{$infos['subject']} 默认的是:L('reject_message')这个在语言文件phpcms/languages/zh-cn/中找到reject_message:
$LANG['reject_message'] =
'您的稿件被退回,请修改后重新提交';
2.在{$infos['subject']} 里面加入其他参数,例如该信息对应的文章标题,在phpcms/model/yp_content_model.class.php文件中找到:
public function status($ids = array(), $status = 99, $modelid = 0) {
.......
//退稿发送短消息、邮件
$message = L('reject_message_tips').$r['title']."<BR><a href=\'index.php?m=yp&c=content&a=edit&modelid={$modelid}&id={$r[id]}\'><font color=red>".L('click_edit')."</font></a><br>";
if(isset($_POST['reject_c']) && $_POST['reject_c'] != L('reject_msg')) {
$message .= $_POST['reject_c'];
} elseif(isset($_GET['reject_c']) && $_GET['reject_c'] != L('reject_msg')) {
$message .= $_GET['reject_c'];
}
........}
修改为:
public function status($ids = array(), $status = 99, $modelid = 0) {
.......
//退稿发送短消息、邮件
if(isset($_POST['reject_c']) && $_POST['reject_c'] != L('reject_msg')) {
$message2 .= $_POST['reject_c'];
} elseif(isset($_GET['reject_c']) && $_GET['reject_c'] != L('reject_msg')) {
$message2 .= $_GET['reject_c'];
}
$message = "<div class=tit1>标题:".$r['title']."</div><div class=tit2>".$message2."<a href=\'index.php?m=yp&c=business&a=content&action=edit&modelid={$modelid}&catid={$r[catid]}&id={$r[id]}\'><font color=red>".L('click_edit')."</font></a></div>";
$messagetitle="".$r['title']."";
$this->message_db->add_message($r['username'],'SYSTEM',$messagetitle,$message);
....
}
这个$messagetitle对应的是read.html中的{$infos['subject']},$message对应的是{$infos['content']},
里面的样式可以根据需要修改也可以增加字段;
最后输出的add_message()中的数据,里面输出的字段同样也可以做相应的修改。