1.修改YIi扩展目录下的Kdeditor.php 文件,把中的js对象声明放到方法外面
$js=<<<EOF var editor_$this->id; KindEditor.ready(function(K) { editor_$this->id = K.create('#$this->id', $properties_string ); }); EOF;
2.视图文件代码
<li class="c_f"><span class="tit">模板变量:</span> <div class="cont f_l"> <?php foreach($templateVar as $key=>$val){?> <span class="template_var" val="<?php echo $val?>"> <?php echo $key?> </span> <?php }?> </div> </li>
<script type="text/javascript"> $('.template_var').bind('click',function(){ var str = $(this).attr('val'); editor_EmailTemplates_zee_content.insertHtml(str);//editor_EmailTemplates_zee_content js编辑器对象名称 }); </script>
3.模型文件,后期处理
/** * 获取模板变量 */ public function getVarUbb($type=null){ if($type==null){ return array( '{username}'=>'{username}', '{url}'=>'{url}', '{sitename}'=>'{sitename}', ); } } /** * 模板变量替换 */ public function replaceVarUbb($str){ $str = str_replace('{username}','<?php echo $params["username"]; ?>',$str); $str = str_replace('{url}','<?php echo $params["url"]; ?>',$str); $str = str_replace('{sitename}','<?php echo Yii::app()->name; ?>',$str); return $str; } /** * 模板保存后的操作 * 写入模板文件 */ protected function afterSave(){ $templatePath = Yii::app()->mailer->pathViews; $templatePath = str_replace('application','',$templatePath); $templatePath = str_replace('.','/',$templatePath); $templatePath = Yii::app()->basePath.$templatePath.'/'; $templatePath = $templatePath.$this->zee_filename.'.php'; $handle = fopen($templatePath, "wb"); fwrite($handle, $this->replaceVarUbb($this->zee_content)); fclose($handle); }